0

ユーザーが自分のメールアドレスを入力して送信を押すだけの、非常にシンプルなメール登録フォームを作成しようとしています。

サインアップフォームを部分的にしたいので、サイトのどこでも使用できます。

フォームは次のようにコーディングされています。 <%= form_for @subscription do |f| %>

たとえば、現在のビュー、コントローラー、およびアクションがホームページで@subscriptionある場合、フォームをどのように見分けることができますか?Subscription.new

ありがとう!

4

3 に答える 3

0

オプションとして、次のことができます。

<%= form_for Subscription.new do |f| %>

ただし、私はこれを自分で試したことがありません。それを試して、それが機能するかどうかを確認してください。

編集:

申し訳ありませんが、最初の読み取りで質問が見つかりませんでした。@subscriptionホームコントローラーでインスタンス変数をに設定しSubscription.newてから、次のようにパーシャル(メインビュー内)に渡すことができます。

<%= render partial, :subscription => @subscription %> 

お役に立てれば。

于 2012-10-05T22:06:08.470 に答える
0

パーシャルを呼び出す前に、それがインスタンス化されていることを確認する必要が@subscriptionあります...または:

 <%= form_for @subscription || Subscription.new do |f| %>

したがって、@subscription存在する場合はそれを使用します。そうでない場合は、にフォールバックしますSubscription.new

于 2012-10-05T22:07:16.600 に答える
0

あなたはホームアクションで正しいと@subscription宣言することができますSubscription.new

于 2012-10-05T22:08:03.010 に答える