has_many:throughとbelongs_toに関するモデル間のリレーションを整理しました。また、移行を使用して必要なIDフィールドをデータベーステーブルに追加しました。コントローラの作成方法を適切に呼び出す方法/場所
私の質問は:正確にどのように、どこ私がすべき
def new
feed_url = params[:feed_url]
@subscription = Subscription.new
redirect_to reader_url, notice: "You are now subscribed to: "+Feed.find_by_feed_url(feed_url).title
end
私はちょうど把握することはできません。私は私の新しい方法でこれを行う
<%= link_to "subscribe", new_subscription_path(feed_url: @feed.feed_url)%>
:ユーザーがリンクをクリックした後、サブスクリプションテーブルに新しい行を作成するサブスクリプションリンクが必要なので、私のcreateメソッドを呼び出すことができます。
また、私のテーブルはここに正しい私の団体であることを確認するために:
User has_many :feeds, :through => :subscriptions, dependent: :destroy
| Usersテーブルには列があります。id
Subscription belongs_to :feed
Subscription belongs_to :user
|サブスクリプションテーブルには列があります:ID、USER_ID、feed_idをID
:|Feed has_many :users, :through => :subscriptions
テーブルが列を持っているフィード
私のbutton_toを作成しようとすると、デフォルトではないようですが、表示されません。 –
あなたは何を持っていますか?あなたはもっと説明できますか?あなたは 'button_to" Create "、subscriptions_path(feed_url:@ feed.feed_url)'のようなものを書く必要がありました。 – jdoe
うわー、あなたは正しいです。正しくルーティングされていないので、私はsubscriptions_pathでsを見つけられませんでした。ありがとう! –