改革宝石:表格之间的关系

时间:2014-12-28 06:20:07

标签: ruby-on-rails reform

我正在尝试为我的网络应用构建服务表单,使用Rails 4.0,slim,simple_form gem和改革gem。

服务表'属于'city,vehicle_type,driver和customer表。

服务模式:

class Service < ActiveRecord::Base
  has_paper_trail

  # Constants
  ACCEPTED_BRANCH_OFFICES = [ 'diadema', 'valinhos' ]
  ACCEPTED_SERVICE_TYPES = [ 'retail', 'contract' ]
  ACCEPTED_PRICING_TYPES = [ 'fixed', 'not_fixed' ]
  ACCEPTED_MANAGEMENT_STATUSES = [ "waiting_confirmation", 'confirmed', 'canceled']      
  ACCEPTED_PAYMENT_METHODS = [ 'contract', 'billet_banking' ]

  # relations
  belongs_to :customer
  belongs_to :one_way_travel_driver, class_name: 'Driver'
  belongs_to :return_trip_driver, class_name: 'Driver'
  belongs_to :origin_city, class_name: 'City'
  belongs_to :destiny_city, class_name: 'City'
  belongs_to :vehicle_type
  has_one :configuration_table

  # validations
  validates :origin_city, presence: true
  validates :destiny_city, presence: true
  validates :customer_id, presence: true
  validates :one_way_travel_driver, presence: true
  validates :return_trip_driver, presence: true
  validates :vehicle_type_id, presence: true  
  [...]
end

部分服务形式:

= f.input :origin_city_id, collection: City.order(:name)
= f.input :destiny_city_id, collection: City.order(:name)
= f.input :one_way_travel_driver_id, collection: Driver.order(:name)
= f.input :return_trip_driver_id, collection: Driver.order(:name)

我想获取表单的origin_city_id,destiny_city_id,one_way_travel_driver_id和return_trip_driver_id(来自City和Driver表)。

如何使用Reform gem和Form Object执行此操作? 我需要使用作文吗?

0 个答案:

没有答案
相关问题