我已经完成了大量的form_for嵌套资源问题,无法让任何解决方案适合我.我想时间问一个个性化的问题.
我有两个模型,工作和问题,工作有很多问题和问题属于工作.
我使用scaffolding创建控制器和模型,然后嵌套routes.rb中的资源.
root :to => "pages#home"
resources :jobs do
resources :questions
end
get "pages/home"
get "pages/about"
get "pages/contact"
class Job < ActiveRecord::Base
has_many :questions
end
class Question < ActiveRecord::Base
belongs_to :job
end
Run Code Online (Sandbox Code Playgroud)
现在我正在尝试访问'/ jobs/1/questions/new'并继续获取
问题#new中的NoMethodError
当代码出现时,我开始使用错误No route matches {:controller =>"questions"}
<%= form_for(@question) do |f| %>
Run Code Online (Sandbox Code Playgroud)
我知道这是错的,所以我开始尝试其他组合,但没有一个工作.
我试过了
<%= form_for([@job.questions.build ]) do |f| %>
Run Code Online (Sandbox Code Playgroud)
那
<%= form_for([@job, @job.questions.build ]) do |f| %>
Run Code Online (Sandbox Code Playgroud)
那
<%= form_for(@job, @question) do |f| %>
Run Code Online (Sandbox Code Playgroud)
在众多其他组合中,这些组合无效.
这是我的佣金路线的链接:git clone https://gist.github.com/1032734
任何帮助表示赞赏,如果您需要更多信息,请告诉我,谢谢.
我对css相对较新,但在试图容纳所有浏览器方面存在问题,在这种情况下,IE并不奇怪.
这是我在JSfiddle上重新创建的问题:http://jsfiddle.net/AgdGs/3/
在IE中,主要问题是导航栏没有保持样式并且将移动到徽标下方.
我认为这是一个相对容易的修复,我只是无法在任何地方找到答案.
在此先感谢您的帮助,如果您需要更多信息,请告诉我们.