0

私は、顧客が多くの注文を出すことができる単純なプログラムに取り組んでいます(つまり、「顧客」has_many :orders & 「注文」 belongs_to :customer)

顧客名と注文日を受け入れるフォームがあります: new.html.erb

<h1>New order</h1>

<%= form_tag  orders_path, method: 'post' do %>
<div class="field">
    <%= label_tag  'customer_name' %><br />
    <%= text_field_tag :customer_name,params[:customer_name] %>
  </div>

  <div class="field">
    <%= label_tag 'order_date' %><br />
    <%= datetime_select :order_date, params[:order_date] %>
  </div>

  <div class="actions">
    <%= submit_tag "create" %>
  </div>

 <% end %>

コントローラーの対応するメソッドは次のようになります。

def create
@customer= Customer.find_by_name(params[:customer_name])
@order = @customer.orders.new(:order_date => params[:order_date])

respond_to do |format|
      if @order.save
format.html { redirect_to @order, notice: 'Order was successfully created.' }
        format.json { render json: @order, status: :created, location: @order }
      else
        format.html { render action: "new" }
        format.json { render json: @order.errors, status: :unprocessable_entity }
      end
    end
  end

私の質問は、params[:order_date] はハッシュです。「datetime」値としてデータベースに送信したいと考えています。「DateTime」型の別の変数を宣言してからデータベースに渡すことで、いくつかの組み合わせを試しましたが、うまくいきません。解決策は何ですか? 前もって感謝します:)

4

1 に答える 1