2011-03-07 61 views
1

我有一个非常简单的rails 3程序和2个模型:Devise的用户模型和捕获文本字段的写作模型和用户的ID。在Rails 3中,使用Formtastic和Devise时,为模型添加新条目时产生错误的通用路由

我的路线文件是非常基本的:

devise_for :users 
resources :users, :writings 
root :to => "users#index" 

而我的作品中,使用Formtastic形式,以及:

<% semantic_form_for(@writing, :html => {:method => :put}) do |f| %> 
<%= f.input :main %> 
<%= f.input :user_id, :collection => current_user, :as => :hidden %> 
<%= f.buttons %> 
<% end %> 

当我尝试创建一个新的文字,表格外观很好,但是当我点击提交时,我得到以下错误:

No route matches "/writings" 

我已经运行了耙路线,事情似乎还在继续,我正在使用rails的默认生成脚手架,所以控制器是开箱即用的控制器。

关于我误入歧途的任何想法?

+1

你可以尝试'<%semantic_form_for @writing do | f | %>'? – Augusto 2011-03-07 16:39:17

+0

@Augusto,你应该把这个评论作为一个实际的答案,因为我相当肯定它会解决问题 – stephenmurdoch 2011-03-07 16:45:32

回答

1

克里斯,尝试把形式的声明这样

<% semantic_form_for @writing do |f| %> 
<%= f.input :main %> 
<%= f.input :user_id, :collection => current_user, :as => :hidden %> 
<%= f.buttons %> 
<% end %> 

我有这个想法,当你指定:html参数,则“覆盖”一些formtastic默认值。对不起,我不是formtastic的专家。我用了一下,然后决定去simple_form :)。

+0

这正好解决了这个问题。非常感谢! – Chris 2011-03-07 16:58:53

相关问题