私は、POSシステムのようなエリクシールとフェニックスのプロジェクトに取り組んでいます。 私は(注文を保つために)私のデシベルにエリクサー/フェニックスは1つのフィールドの自動割り当てを変更します
schema "foods" do
field :name, :string
field :price, :integer
belongs_to :category, Pos1.Category
has_many :order_items, Pos1.OrderItem
だけでなく、注文を保ついくつかの食品を持って
schema "orders" do
field :number_of_customers, :integer
belongs_to :table, Pos1.Table
has_many :order_items, Pos1.OrderItem
と注文項目(特定のORDER_IDへのリンク注文項目を保つために)
schema "order_items" do
field :quantity, :integer
belongs_to :order, Pos1.Order
belongs_to :food, Pos1.Food
私は、データベースからすべての食品を一覧表示するページを作りたいと思います。これらの各食品にはボタンがあり、onclickはその食品をorder_itemテーブルに追加します。
これは私がこれまでに(show.html)思い付いたものです。しかし、私はfood_idに苦しんでいます
<%= for food <- @foods do %>
<%= food.name %>
<%= render Pos1.OrderItemView, "form.html", changeset: @order_item_changeset, foods: @foods, action: order_order_item_path(@conn, :create, @order) %>
<% end %>
とフォーム(form.html)
<%= form_for @changeset, @action, fn f -> %>
<div class="form-group">
<%= label f, :food_id, class: "control-label" %>
<%= select f, :food_id, foods_to_select(@foods), class: "form-control" %>
<%= error_tag f, :food_id %>
</div>
<div class="form-group">
<%= label f, :quantity, class: "control-label" %>
<%= number_input f, :quantity, class: "form-control" %>
<%= error_tag f, :quantity %>
</div>
<div class="form-group">
<%= submit "Addfood", class: "btn btn-primary" %>
</div>
<% end %>
。上記のコードでは、チェンジセット形式のフードと数量を選択する必要があります。 like here ですが、show.htmlにある特定のフードに基づいて、自動的にfood_idを割り当てることができますページ?だから、すべての食品だけで数量の選択があります。
たとえば、私に2つの食品、コークスとペプシがあるとします。 show.htmlにはコークス用とペプシ用の2つのボックスがあります。各ボックスには数量入力と「送信ボタン」があります。したがって、コークスボックスとonclickに1を入力すると、order_itemsテーブルに挿入されます。ペプシやその他の食品の場合は逆も同様です。
ありがとうございます!
だけしようと、それが動作します。 hidden_inputそれは私が探していたものです。どうもありがとう! – Ilya