1

私のアプリには、Athlete多くの がありsportsます。ユーザーがプレイするスポーツを編集できる編集アカウント セクションを構築しようとしていますが、スタックしています。

UserSportのフィールドを持つ結合テーブルがありますathlete_id, sport_id, primary。これが私の見解です:

      <% @athlete.user_sports.each do |user_sport| %>
        <% if user_sport.primary? %>
          <div class="row">
            <label>Primary Sport:</label>

            <%= f.semantic_fields_for :user_sports do |builder| %>
              <%= builder.select :sport_id, Sport.all.collect { |sp| [sp.name, sp.id] }, { include_blank: "Choose One", selected: user_sport.sport_id }, { class: "chosen field autosave primary-sport-select", :"data-form-selector" => "#athlete-form", id: "primary-sport-select" } %>
            <% end %>
            <div class="cl">&nbsp;</div>
          </div>
        <% else %>
          <div class="row">
            <% if @athlete.user_sports.many? %>
            <label>More Sports</label>
            <% else %>

            <% end %>
          </div>
        <% end %>
      <% end %>

ユーザーが主なスポーツを変更できるようにする方法がわかりません

4

1 に答える 1

0
  1. @athlete 行をテーブルにリストします。
  2. にリンクする編集リンクを各行に付与します。edit_athlete_path(@athlete)
  3. Athleteフォームに彼らがプレーするスポーツのフィールドを含める
  4. フォームからUserSportテーブルにデータを書き込んでいる場合は、モデルのコマンドを使用して、そうする許可を与える必要があります。その場合は、フォーム内のネストされたモデルに関する Railscast ビデオをご覧ください。Athleteattr_accessible
于 2013-05-07T20:05:35.393 に答える