4つの属性を持つフルーツモデル:name, :characteristic1 ,:characteristic2,:characteristic3
があります。フルーツテーブル:characteristic1 ,:characteristic2,:characteristic3
では、フィールドは6つのチェックボックスから値を受け取ります。フルーツテーブルに6つのフィールドをすべて追加したくないためです。ユーザーは3つしか選択できません。チェックボックスで選択して、忘れずに:characteristic1 ,:characteristic2,:characteristic3
に挿入してください:name_fieldをtext_fieldとして受け入れる名前のフィールド?これはコントローラで行う必要があると確信していますが、howは分かりません。私は2つの新しいモデルを作成するためにあなたを言うだろうフォームを保存する前にcheck_boxの値を操作してください
フォーム
<%= form_for @fruit ,:url=>{:action =>"create"} do |f| %>
<%=f.text_field :name %>
<%=f.fields_for :characteristics do |c| %>
<!--Characteristics checkboxes -->
<%end%>
<%=f.submit "submit" %>
私はそれを避けたいと思っていました。できるだけ単純なものがほしいと思っていました。 – katie
あなたのやり方では、一貫性を保証することは難しく、例えば、特定の特性を持つすべての果物もまた困難になることがあります。 –
データベーステーブルに30個のフィールドを追加するのは普通の習慣ですか? – katie