Rails没有显示形式

时间:2014-04-15 12:45:50

标签: ruby-on-rails ruby ruby-on-rails-4

我使用Ruby on Rails创建了一个基本的CRUD应用程序。我创建并运行了我的迁移:

class CreateUsers < ActiveRecord::Migration
  def self.up
    create_table :users do |t|
      t.string :username
      t.string :password
      t.string :security_number
    end
  end
  def self.down
    drop_table :users
  end
end

但是,当我访问/users/{{user_id}}页面并尝试创建新用户时,Rails并未提供表单供我输入详细信息。

过去几天我一直只玩Rails,所以我一定做错了。如何获取输入数据的表单?

应该显示表单的视图代码:

<%= form_for(@user) do |f| %>
  <% if @user.errors.any? %>
<div id="error_explanation">
  <h2><%= pluralize(@user.errors.count, "error") %> prohibited this user from being saved:</h2>

  <ul>
  <% @user.errors.full_messages.each do |message| %>
    <li><%= message %></li>
  <% end %>
  </ul>
</div>
 <% end %>

  <div class="actions">
    <%= f.submit %>
  </div>
    <% end %>

对不起,缩进是混乱的。

1 个答案:

答案 0 :(得分:2)

您的表单代码是Rails生成器生成的代码,但它缺少显示实际表单字段的代码。

在错误消息之后和.actions div之前插入表单字段,如:

<div class="field">
  <%= f.label :name %>
  <%= f.text_field :name %>
</div>