0
"ブランチ"フィールドの "grouped_collection_select"と "sector"フィールドの組み合わせがあります。部門belongs_toのセクターにhas_manyの枝と枝:grouped_collection_selectがエラーを返します
<%= f.grouped_collection_select(:branch, current_user.company.sectors.order(:sector), :branches, :sector, :id, :branch, include_blank: true) %>
これは動作しますが、「:枝は、」すべての分岐を示してばかりsectordのように、current_user.companyの枝を表示する必要があります。 :「枝」を私が変更された場合でも、
(eval):1: syntax error, unexpected $end group.#<ActiveRecord
は、私がここで間違って何をやっている:「current_user.company.branches.order(:ブランチ)」を、私はエラーを取得しますか?ありがとう!明瞭さ(と意味)については
、それは示しています
は、その後、あなたがBRANCH_IDを設定したいと仮定すると、セクタは、name属性を持っており、分岐はname属性があり、これは動作するはずですデータベース内のすべてのブランチセクタのように、current_user.companyに属するブランチのみを表示する必要があります。しかし、branchesの代わりに@branchesを使うとエラーが返されます。 – John
ブランチを使用することは、次の式と同じです。 "current_user.company.sectors.order(:sector).first.branches"覚えておいてください:branchesは、各セクタで呼び出されるメソッドの名前です。そのため、それは文字列またはシンボルだけである可能性があります。問題のようなサウンドは、そのユーザーのアクセス可能なブランチに基づいて@sectorsコレクションを制限したいということです。たとえば、sectors = current_user.company.branches.collect {| branch | branch.sector} .uniq – miked
私の結論は、grouped_collection_selectは私が使用できるものではないということです。代わりに、私はcollection_selectを使用し、セクターリストボックスでの選択に基づいてjQueryで値をフィルターに掛けます。しかし、あなたの説明に感謝します! – John