gpt4 book ai didi

ruby-on-rails - 如何正确显示?

转载 作者:太空宇宙 更新时间:2023-11-03 18:26:49 24 4
gpt4 key购买 nike

我必须展示一些属于洞穴的岩石和属于用户的洞穴!好吧,看起来很公平吧?但为什么岩石显示页面窗台不承认洞穴?我们开始:

岩石模型

belongs_to :cave

洞穴模型

has_many :rocks

用户模型

has_one :cave

岩石 Controller

def new 
@rock = Rock.new
end

def show
@cave = Cave.find(params[:cave_id])
@rock = @cave.rocks
end

def create
@rock = current_user.cave.rocks.build(params[:rock])
if @rock.save
flash.now[:success] = "Ya Man"
redirect_to :action => :show
else
render :new
end
end

摇滚表演现场

<h2><%= @rock.cave.name %></h2>

错误

undefined method `cave' for nil:NilClass

最佳答案

show Action 中,@cave.rocks 返回nil,因此您将nil 分配给@rock。顺便说一下,我猜它会返回一个集合,而你不会在那里有一个岩石元素,你可能想使用 @cave.rocks.first 代替。

此外,在获取洞穴 ID 并根据它找到岩石的岩石 Controller 上执行 show 操作是相当奇怪的。更标准的方法是接收岩石 ID。

关于ruby-on-rails - 如何正确显示?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9667458/

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