【发布时间】:2011-01-08 03:25:48
【问题描述】:
很遗憾,这是我这么多天以来的第二篇文章。所以应用程序在 mysql 和 rails 3.0.3 上运行良好,但我发现我需要使用 MSSQL,所以我不得不将 rails 降级到 3.0.1。
简而言之,我将 show.html.erb 复制为 show2.html.erb 并创建了一个新方法,它是 show 方法的副本。然后我创建了一个路由匹配。
我的控制器
class fathersController < ApplicationController
def show
@father= Father.find(params[:id])
respond_to do |format|
format.html # show.html.erb
format.xml { render :xml => @father}
end
end
def show2
@father= Father.find(params[:id])
respond_to do |format|
format.html # show.html.erb
format.xml { render :xml => @father}
end
end
end
routes.rb
resources :fathers do
match '/show2' => 'fathers#show2'
resources :kids
end
当我打电话时
http://127.0.0.1:3000/father/1
我得到了显示视图,但是当我打电话时
http://127.0.0.1:3000/father/1/show2
我收到以下错误
Couldn't find father without an ID
请求参数返回为
{"father_id"=>"1"}
所以我知道问题在于应用程序将 id 作为father_id 传递,但我该如何解决?任何帮助将不胜感激。
【问题讨论】:
标签: activerecord model view ruby-on-rails-3