0

приложения/модель/encounter.rbRails 4 - SimpleForm ассоциация не создавая запись

class Encounter < ActiveRecord::Base 
    has_many: orders 
end 

приложение/модель/order.rb

class Order < ActiveRecord::Base 
    belongs_to :encounter 
    has_many :order_tests 
    has_many :tests, through :order_tests 
end 

приложения/модель/order_test.rb

Class OrderTest < ActiveRecord::Base 
    belongs_to :order 
    belongs_to :test 
end 

приложение/модели/test.rb

Class Test < ActiveRecord::Base 
    has_many :order_tests 
    has_many :orders, through: :order_tests 
end 

Я пытаюсь добавить несколько тестов к первым порядку данной встречи. Я пытаюсь достичь этого, используя ассоциации simple_form. Вот моя установка в представлении

= simple_form_for @encounter do |f| 
    = f.input :name 
    = f.patient_id 
    = f.doctor_id 
    = simple_form_for @encounter.orders.first do |o| 
    = o.associations tests, as: :check_boxes, collection: Test.all 

это мой журнал

Started PATCH "/encounters/71?next_step=Meds+Entry&step_group=accessioning&task=326" for 127.0.0.1 at 2016-04-05 13:10:50 -0500 
Processing by EncountersController#update as HTML 
    Parameters: {"utf8"=>"✓", "authenticity_token"=>"qSC7IHInq0fqArDXsXbKENSMYM/5B1Ijry4hZ1o6oVtyVb14ECnt95rNX2Pqv+GHmanugkBvQfc686JmKJeSeA==", "encounter"=>{"patient_id"=>"", "organization_id"=>"", "address_id"=>"", "name"=>"", "encounter_type_id"=>"3", "encounter_at"=>"", "do_next_step"=>"0"}, "patient_first_name"=>"", "patient_middle_name"=>"", "patient_last_name"=>"", "patient_dob"=>"", "patient_gender"=>"", "patient_race"=>"", "patient_ssn"=>"", "address"=>"", "city"=>"", "state"=>"", "zip"=>"", "npi"=>"", "order"=>{"test_ids"=>["1", "2", "3", ""]}, "button"=>"", "next_step"=>"Meds Entry", "step_group"=>"accessioning", "task"=>"326", "id"=>"71"} 
    CACHE (0.0ms) SELECT "users".* FROM "users" WHERE "users"."id" = $1 ORDER BY "users"."id" ASC LIMIT 1 [["id", 2]] 
    CACHE (0.0ms) SELECT "encounters".* FROM "encounters" WHERE "encounters"."id" = $1 LIMIT 1 [["id", "71"]] 
    Task Load (0.2ms) SELECT "tasks".* FROM "tasks" WHERE "tasks"."deleted_at" IS NULL AND "tasks"."id" = $1 LIMIT 1 [["id", 326]] 
    (0.2ms) BEGIN 
    (0.2ms) COMMIT 
    (0.2ms) BEGIN 
    (0.2ms) COMMIT 
Redirected to http://localhost:3002/encounters/71 
Completed 302 Found in 45ms (ActiveRecord: 4.5ms) 

сервера Кажется, если он не добавить какую-либо запись, я немного не знаю, как идти об этом. Я пытаюсь добавить новую запись в таблицу order_tests (order_id, test_id) для каждого отмеченного флажка.

ответ

0

Предполагая, что журнал отсечение для обновления встречи, существует очевидная проблема в том, что там нет команды обновления называют ... случайный пример из проекта, я работаю над:

SQL (22.7ms) UPDATE "users" SET "trust_name" = $1, "updated_at" = $2 WHERE "users"."id" = $3 [["trust_name", "ttrusdt dfsdf"], ["updated_at", "2016-04-05 19:03:26.823849"], ["id", 24]] 

Это заставляет меня думать, что в действии контроллера происходит что-то неожиданное ... может быть полезно опубликовать свой код для него.

Если это произошло в другом месте, как и проверка, я ожидаю увидеть команду обновления в журнале, за которой следует откат ... отклонение обновления.

Смежные вопросы