4

最初に足場コマンドを実行しました。

rails generate scaffold ユーザー

今、私は app/models/user.rb に行き、たくさんのフィールドを追加しました

私が望むのは、 app/views/users/ のビュー ファイルを再生成するコマンドを実行して、上で追加したフィールドの HTML が _form.html.erb に含まれるようにすることです。

ありがとう、

4

2 に答える 2

1

アイデアは、formtastic gem を使用することです。

次に、フォームは次のようになります。

<%= semantic_form_for @user do |f| %>
  <%= f.inputs %>
  <%= f.actions %>
<% end %>

このフォーム スニペットは、次の説明のように機能します。

これにより、一連の入力 (データベース テーブルのほとんどの列に 1 つと、各 ActiveRecord の belongs_to-association に 1 つ) がレンダリングされ、その後にデフォルトのアクション ボタン (入力送信ボタン) が続きます。

于 2012-07-26T08:56:43.577 に答える
1

同じコマンドを再度使用して、--skip-migration以下のような新しいフィールドを指定できます

rails generate scaffold User existing_field:string new_field:string --skip-migration

を使用する必要があることに注意してください。使用--skip-migrationしないと、スキャフォールドの生成が失敗し、移行が既に存在するというエラーが発生します。上書きするすべてのファイルが表示されます。既にいくつかの変更を加えているため、モデル ファイル以外のすべてを上書きします。

また、新しいフィールドを追加しているため、それに応じて移行ファイルを更新する必要があります。

代わりの

既存の移行ファイルを削除し、以前のように足場を生成し、選択したファイルを上書きします。

rails generate scaffold User existing_field:string new_field:string
于 2012-07-26T09:08:25.747 に答える