У меня есть форма, в которой пользователь должен проверить состояние продаж перед отправкой
<%= form_for @order, url: checkout_path do |f| %>
<%= f.hidden_field :user_id %>
<%= f.check_box :cgos_accepted %>
<%= f.submit %>
<% end %>
:cgos_accepted
- это атрибут порядка, который является логическим, и по умолчанию он имеет значение false.
Когда пользователь устанавливает флажок, он должен изменить значение на true, но это не так ...
РЕДАКТИРОВАТЬ>
это html когда флажокпроверено:
<input class="form-check-input boolean optional" type="checkbox" value="true" name="order[cgos_accepted]" id="order_cgos_accepted" data-com.agilebits.onepassword.user-edited="yes">
Я добавляю свой контроллер, может быть, что-то не так, и я не вижу ...
class Clients::OrdersController < Clients::ApplicationController
def index
@orders = Order.all
@orders = @orders.filter_by_status(params[:status]) if params[:status]
end
def show
@order = Order.find(params[:id])
end
def new
@order = current_cart.order
@billing_address = BillingAddress.new
end
def create
@order = current_cart.order
@order.update_sub_total!
@order.update_total!
if @order.update_attributes!(user_id: current_user.id)
redirect_to new_clients_order_payment_path(@order)
end
end
private
def order_params
params.require(:order).permit(:status, :user_id, :token , :sub_total, :cgos_accepted)
end
end