Ahoj, já jsem učení kolejnice a dostala jsem situace, kdy musím aktualizovat nebo vytvořit data pro has_one souborům model/tabulky.
Zkoušel jsem to
Pracovník.rb
class Worker < ApplicationRecord
has_one :worker_encrypted_info
end
worker_encrypted_info.rb
class WorkerEncryptedInfo < ApplicationRecord
belongs_to :worker
end
workers_controller.rb
def update_personal_info
if @worker.update(update_personal_info_params)
@worker.create_worker_encrypted_info(sin: params[:worker_encrypted_info][:sin])
end
end
co teď
@worker.create_worker_encrypted_info(sin: params[:worker_encrypted_info][:sin])
dělá je první aktualizace worker_encrypted_info záznam s worker_id: nil, a potom vytvořit nový záznam pro stejné worker_id namísto aktualizace toho starého. což není příliš velký samozřejmě, protože jsem dont potřebovat worker_id: nil záznam v databázi. proč musím smazat předchozí ručně .zničit kód? je nějaký Efektivní způsob, jak to udělat?