Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 铁路3号线->;展示。默认ID是否为nil?_Ruby On Rails_Ruby On Rails 3 - Fatal编程技术网

Ruby on rails 铁路3号线->;展示。默认ID是否为nil?

Ruby on rails 铁路3号线->;展示。默认ID是否为nil?,ruby-on-rails,ruby-on-rails-3,Ruby On Rails,Ruby On Rails 3,我想把我的项目的根转到《展示行动》这本书上。让书的ID是动态的 但我不想影响标准的表演动作 即。。。(此代码当然不起作用:) 我希望这是有道理的 基本上,我希望能够通过其ID查看任何书籍。但如果未指定ID,则将其默认为Book.first 提前感谢…您就快到了。尝试使用params[:id]。将?显示为您的if条件,它应该会得到您想要的 您需要在routes.rb中使用root:to=>“books#show”route才能正常工作 然而,从清晰的角度来看,我只有两个动作:你的正常表演和主页动作

我想把我的项目的根转到《展示行动》这本书上。让书的ID是动态的

但我不想影响标准的表演动作

即。。。(此代码当然不起作用:)

我希望这是有道理的

基本上,我希望能够通过其ID查看任何书籍。但如果未指定ID,则将其默认为Book.first


提前感谢…

您就快到了。尝试使用
params[:id]。将?
显示为您的
if
条件,它应该会得到您想要的

您需要在routes.rb中使用
root:to=>“books#show”
route才能正常工作

然而,从清晰的角度来看,我只有两个动作:你的正常表演和
主页
动作,内容如下:

def home
  @book = Book.first
  render :action => "show"
end

def show
  @book = Book.find(params[:id])
end
然后,在routes.rb中:

root :to => "books#home"

这将使您保持这两个动作的干净,并更直接地传达这些动作的意图。

您已经接近了。尝试使用
params[:id]。将?
显示为您的
if
条件,它应该会得到您想要的

您需要在routes.rb中使用
root:to=>“books#show”
route才能正常工作

然而,从清晰的角度来看,我只有两个动作:你的正常表演和
主页
动作,内容如下:

def home
  @book = Book.first
  render :action => "show"
end

def show
  @book = Book.find(params[:id])
end
然后,在routes.rb中:

root :to => "books#home"

这将使您保持这两个操作的干净,并更直接地传达这些操作的意图。

删除我的答案,因为这种方法更干净,可读性更强:)谢谢Chris!代码修复是有效的。但把他们分开绝对有道理。。。再次感谢,很抱歉。这会让你等10分钟才接受。所以我很快就跑腿了。完美答案。再次感谢您的帮助…删除我的答案,因为这种方法更简洁,可读性更强:)谢谢Chris!代码修复是有效的。但把他们分开绝对有道理。。。再次感谢,很抱歉。这会让你等10分钟才接受。所以我很快就跑腿了。完美答案。再次感谢你的帮助。。。