gpt4 book ai didi

html - 我的 post.html.erb 文件中的数据检索错误

转载 作者:行者123 更新时间:2023-11-29 23:26:52 25 4
gpt4 key购买 nike

首先,很抱歉我无法具体说明我的问题,因为我无法找出问题的确切原因。

/db/migrate/XXXXXX_create_restaurants.rb

...
t.string :restaurant_name
t.string :restaurant_addr
...

/app/controllers/restaurant.rb

def post
@restaurant = Restaurant.where(name: params[:rest_name])
end

/app/views/restaurant/post.html.erb

 ....
<%= @restaurant.restaurant_addr %>
....

我有这个“餐厅表”,它运行良好,这意味着餐厅的地址是通过保存在餐厅表中的方式显示的。但我犯了一个巨大的错误(我的猜测),在那之后制作了“RestaurantAddr 表”....我不应该这样做。(该表 RestaurantAddr 可以与表 Restaurant 的列名称 Restaurant_addr 相同...)

/app/models/restaurant.rb

...
has_one :restaurant_addr
...

/db/migrate/XXXXX_create_restaurant_addrs.rb

t.integer :restaurant_id
t.string :addr_name
t.string :addr_code

/app/models/restaurant_addr.rb

belongs_to :restaurant

就像上面一样,我更改了餐厅模型并添加了新的“RestaurantAddr 表”。它运行良好,没有任何问题,但突然我的网页地址显示为

< RestaurantAddr0012854(some characters and numbers) >

当我使用一些 RestaurantAddr 表在我的 Controller 文件中查找餐厅记录时。所以我删除了与 RestaurantAddr 表相关的代码。即使在那之后,我的 View 文件的地址也没有显示我想要的内容(仍然是上面奇怪的地址?事情)。所以我删除了 RestaurantAddr 表。然后这一次,当我在网站上看到我的帖子页面时,会弹出错误消息:

"ActiveRecord::StatementInvalid in Search#posts" "Could not find table 'restaurant_addrs'."

我认为我的问题是我的网络改变了检索数据的方式。原来

<%= @restaurant.restaurant_addr %>

它的意思是Restaurant表的restaurant_addr列,但现在它正在寻找RestaurantAddr表而不是Restaurant表。

请问有人可以帮忙吗?我无法删除所有数据并重置...我是新手,所以我没有进行“上下迁移”。如果您知道什么关键字可以帮助我搜索此问题并解决它,请告诉我。您的所有评论都将对我有很大帮助。谢谢。

最佳答案

问题是您需要从模型中删除 has_one :restaurant_addr

关于html - 我的 post.html.erb 文件中的数据检索错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26889602/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com