0

私は Rails の初心者であり、このトピックに関する情報を得るために Web (Ryan の Railcast を含む) を精査しましたが、私が試したすべてがうまくいきませんでした。

ユーザーが好きな種類のおやつをテーブルに追加できるようにしようとしています。今のところ、3 つのテーブルがあります: おやつ (メイン テーブル)、icecream_flavors、およびブランドです。私が設定した関係は次のとおりです。

class Treats < ActiveRecord::Base

has_many :icecream_flavors
has_many :brands


class Brands < ActiveRecord::Base

belongs_to :treats


class Icecream_flavors < ActiveRecord::Base

belongs_to :treats

おやつテーブルには、Icecream_flavor_id と Icecream_brand_id のフィールドがあります。
Icecream_flavors テーブルには、flavor_name と brand_id のフィールドがあります。私は、Icecream_flavors テーブルに情報 (チョコレート、バニラなど) と brand_ids をシードしました。

私がやろうとしているのは、エンド ユーザーが Icreamflavors テーブルの情報に基づいて、Treats 新しいフォームのチェックボックスを使用して、Treats テーブルにデータを入力できるようにすることです。チェックボックスで icecream_flavor_id と brand_id を Treats テーブルに渡したいと思います。

テーブルに情報を渡すことはもちろん、Treats フォーム内にチェックボックス フォームを表示することに失敗しました。

これは、別の Brands テーブルと Icecream_flavors テーブルから情報を取得するためのドロップダウン フィールドとテキスト フィールドで使用しているコードです。ドロップダウンとテキスト フィールドを単純なチェックボックス リストに置き換えて、Icecream_flavors テーブルのみからデータを取得してチェックボックス データを入力し、送信時に Treats テーブルを更新したいと考えています。

<h1>Treats</h1>

<%= render 'form' %>

<%= link_to 'Back', treats_path %>

<% form_for :treat, :url => treats_path do |f| %>

<div class="field">
<%= f.label :user_id %><br />
<%= f.number_field :user_id %>
</div>

<div><%= f.label :brand %><br />
<%= collection_select(:treats, :brand_id, Brand.all, :id, :name) %> 

<div class="field">
<%= f.label :icecream_flavor_id %><br />
<%= f.number_field :icecream_flavor_id %>
</div>

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

<% end %>

任意のガイダンスをいただければ幸いです。

4

0 に答える 0