编辑表单正在显示,但订单未传递给表单

时间:2013-05-28 12:33:32

标签: ruby-on-rails ruby activeadmin

我有一个订单模型。我正在使用主动管理员,我不确定问题是否是因为它,但当我去编辑我的订单时,编辑页面是空白的,没有我为该订单存储的先前数据。另一个问题可能是同一个问题,当我从编辑页面填写订单时,它会创建一个新订单。此时我只有视图/管理员/订单/表单,我还没有内置的编辑视图。我应该买一个吗?

我在与此相关的路线中什么都没有。

订单控制器

ActiveAdmin.register Order, :sort_order => "end_date_asc" do
controller.authorize_resource

menu :label => "All Orders", :parent => "Sales", :priority => 2

scope_to :current_user


filter :name, label: "Order Name"
filter :order_category, label: "Order Category"
filter :order_type, label: "Order Type"
filter :order_status, label: "Order Status"
filter :order_priority, label: "Order Priority"
filter :customer, label: "Customer"
filter :start_date, label: "Start Date"
filter :end_date, label: "Due Date"
filter :id, label: "Order ID#"



index  do |order|
  column "ID" do |order|
    link_to order.id, admin_order_path(order)
  end
  column "Proof" do |order|
    image_tag order.proof_url(:proof).to_s
  end
  column "Order Name" do |order|
    link_to order.name, admin_order_path(order)
  end
  column(:customer, :sortable => :customer_id)
  column "Category", :order_category
  column "Status", :order_status
  column "Priority", :order_priority
  column "Due Date", :end_date
  default_actions
 end



# TODO: Form is displaying, but order is not being passed to the form
  # reference: sprintapp admin_users.rb
  # Create/Edit Form
  form :partial => "form"

show :title => :name do

panel "Order Details" do
  attributes_table_for resource do
    row :id
    row :assignee_id
    row :name
    row :order_category
    row :order_type
    row :order_status
    row :order_priority
    row :start_date
    row :end_date
  end
end
  resource.line_items.each do |a|
    text_node(render :partial => "admin/line_items/show", :locals => { :line_item => a })
end
panel "Printing Details" do
    attributes_table_for resource do
        row :print_location
        row :color_front
        row :color_back
        row :color_sleeve
        row(:artwork) do
            image_tag order.artwork_url(:thumb).to_s
        end
        row(:proof) do
            image_tag order.proof_url(:thumb).to_s
            end
          end
    end
   end

   action_item :only => [:edit, :show] do
    form :partial => "form"
   end
  end

订单

<%=
semantic_form_for [:admin, @orders, current_admin_user.orders.build], :builder => ActiveAdmin::FormBuilder do |f| 
      f.inputs "Order Information" do 
        f.input :customer_id, as: :select, :collection => Customer.all, hint: "You need to create a customer before filling out the order form."
        f.input :order_category_id, as: :select, :collection => OrderCategory.all, label: "Category", as: :select, hint: "IE: Screen Printing, Embroidery, etc."
            f.input :order_type_id, as: :select, :collection => OrderType.all, label: "Type", as: :select, hint: "IE: New, Re-oreder, etc."
            f.input :order_status_id, as: :select, :collection => OrderStatus.all, label: "Status", as: :select, hint: "IE: New, art, screens, etc."
            f.input :order_priority_id, as: :select, :collection => OrderPriority.all, label: "Priority", as: :select, hint: "IE: 2-day Rush, 3-day Rush, standard, etc."
            f.input :start_date, label: "Start Date", as: :datepicker, hint: "Usually, this is the day you enter the order, but you could put a future date."
            f.input :end_date, label: "Due date", as: :datepicker, hint: "Put the date in which your order is due."
            f.input :name, label: "Order Name", hint: "This is the name of the order." 
        end
        f.inputs "Line Items" do 
            render :partial => "admin/line_items/form", :locals => { :form => f }
        end
        f.inputs "Printing Details" do
            f.input :print_location_id, as: :select, :collection => PrintLocation.all, as: :select, hint: "Select the location of the print. This should be set up by the admin specific to your companies needs."
            f.input :color_front, hint: "List the colors to be printed on the front."
            f.input :color_back, hint: "List the colors to be printed on the back."
            f.input :color_sleeve, label: "Color side", hint: "List the colors to be printed on the side."
            f.input :artwork, hint: "Upload the artwork for this order"
            f.input :proof, hint: "This is for art department use only!"
        end 
          f.buttons 
    end


   %>

1 个答案:

答案 0 :(得分:0)

在我表单的第2行中,我将其更改为semantic_form_for [:admin, resource], :builder => ActiveAdmin::FormBuilder do |f|