simple_form_for不显示字段

时间:2010-12-08 18:42:27

标签: ruby-on-rails forms

我有一个模型(Project),在'new'操作中我有这个代码

<h1>Create new project</h1>
<% simple_form_for @project, :url => create_project_path  do |project_form| %>
<%= project_form.error_messages %>
<ul>
    <% project_form.input :name %>
    <% project_form.input :subdomain %>

    <% project_form.input :allow_email_report_client %>
    <% project_form.input :allow_email_post_client %>

    <% project_form.submit %>
</ul>
   <% end%>

控制器代码很简单 我有load_and_authorize_resource(使用CanCan),操作代码是

def new
@project = Project.new
end

现在,我确实得到了一个标记,但是这个表单中没有字段

对于帐户模型,我有完全相同的内容,并且显示所有字段都没有问题。

有没有人知道这是什么问题?

2 个答案:

答案 0 :(得分:3)

啊!您错过了字段中的=个符号:

<%= project_form.input :name %>
<%= project_form.input :subdomain %>
....

如果没有=<% %>中的代码将会运行,但不会输出。

另外,很高兴知道:在Rails 2.x中,=不需要form_for(Rails 3,但需要=

答案 1 :(得分:1)

确保您的新动作如下所示:

def new
  @project = Project.new
end