【问题标题】:form_for not rendering to view but is generating html correctlyform_for 不呈现以查看但正确生成 html
【发布时间】:2012-03-25 17:55:56
【问题描述】:

我认为有以下表格:

<%= form_for @new_home, :url => {:controller => "homes", :action => "create"} do |f| %>
       <%= f.hidden_field :user_id, :value => current_user.id %>
       <%= f.label :name, "Home Name:" %><br />
       <%= f.text_field(:name) %>
       <%= f.submit("Add New Home", :class => "green_button") %>
<% end %>

和控制器:

def main
    @new_home = Home.new
end

生成的html是:

<form accept-charset="UTF-8" action="/homes/create" class="new_home" id="new_home" method="post"><input name="utf8" type="hidden" value="&#x2713;" /><input name="authenticity_token" type="hidden" value="lyvJq8FmFoOvzi7LYNhkrY8t9WI9phtBlNdGvMOFoF8=" />
    <input id="home_user_id" name="home[user_id]" type="hidden" value="1" />
    <label for="home_name">Home Name:</label><br />
    <input id="home_name" name="home[name]" size="30" type="text" />
    <input class="green_button" name="commit" type="submit" value="Add New Home" />
</form>

由于某种原因,我看不到在我的视图中显示的表单。没有产生错误。我所看到的只是一个没有表格的空白页。我没有应用任何 jquery 或 css 来隐藏表单。有什么想法吗?

【问题讨论】:

    标签: ruby-on-rails-3 form-for


    【解决方案1】:

    我认为您缺少 div 字段和操作类。见下文。

    <%= form_for @new_home, :url => {:controller => "homes", :action => "create"} do |f| %>
       <%= f.hidden_field :user_id, :value => current_user.id %>
      <div class="field">
       <%= f.label :name, "Home Name:" %><br />
       <%= f.text_field :name %>
      </div>
      <div class="action">
       <%= f.submit("Add New Home", :class => "green_button") %>
      </div>
    <% end %>
    

    如果它不起作用,请告诉我!

    【讨论】:

    • 其实 div 应该没关系。你的表格看起来和我的一样。不知道这里发生了什么...我稍后再看一下。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-10-02
    • 1970-01-01
    • 2017-07-14
    • 2011-10-21
    • 1970-01-01
    • 1970-01-01
    • 2012-03-05
    相关资源
    最近更新 更多