0

Player新しいを作成するためのフォームがあります/players/new.html.erb

<%= form_for(@player) do |f| %>
  ...
<% end %>

ホームページに入れたいです。

フォーム全体をコピーして貼り付けると、次のエラーが発生します:undefined methodmodel_name'for NilClass:Class`

フォームをiframeに含めることができます

<div>
  <iframe src=../players/new.html>
</div>

ただし、これはヘッダーとフッターを含むページ全体を示しています。

理想的にはファイルから直接(つまり、コピー&ペーストなしで)フォームを含めるにはどうすればよいですか?

4

2 に答える 2

2

あなたform_forは少なくとも@player存在する必要があります

本当にそのフォームをホームページに含めたい場合は、ホームコントローラーアクションで新しいPlayerインスタンスを初期化します。

@player = Player.new

ただし、のビューPlayerController(またはそのフォームを作成したコントローラー)は、からのヘルパーメソッドへのアクセスに依存PlayerHelperする可能性があるため、それをに含める必要がある場合があることに注意する必要があります。HomeHelper

于 2012-07-07T14:17:28.430 に答える
1

フィールドを部分的に移動して、ホームページや他のページのフィールドを再利用します。それが機能するためにのURLを設定していることを覚えておいてくださいform_or

于 2012-07-07T14:22:33.963 に答える