0

私は1対1の関係を持つアプリケーションを構築しています。予約は 'has_one'です。 私の質問は、ユーザーがOrderのフォームを記入しないと決めた場合、DBからReservationを削除するにはどうすればいいですか?私はこれを行う方法を探してみましたが、最大の問題は何を検索するのか分からないことです。Rails 4 - 1対1の関連付けで保存/削除

現在、私の作成アクションは、フォームが提出された後に予約を保存し、注文の支払いが完了するようにフォームにリダイレクトします。私はあなたの最良の選択肢は、予約

を作成するためのモデルでbefore_saveを使用することだと思い

+0

'Reservation'は常に' Order'を持っていますか? –

+0

はい、正しいです。 – ayounis90

答えて

1

注文が完了していない場合に予約を削除することを心配するのではなく、最初に予約の作成を防止しないのはなぜですか。

class Reservation 
    has_one :order 
    accepts_nested_attributes_for :order 
    validates_presence_of :order 

両方のオブジェクトの作成を1つのページにまとめたり、コントローラのステップ間でパラメータやオブジェクトを渡したりすることを検討してください。

+0

ありがとう、私はコントローラのステップ間でパラメータやオブジェクトを渡すことについての部分に言及したので、この答えを受け入れます。私はアプリケーションを既に私が戻って、あまりにも多くのものを変更することはできませんように設定している。また、フォームが長すぎるため、1ページを作成したくなかった。 – ayounis90

1

あなたは1時間

でそれらの両方を作成する必要があります。また、それらの両方がそれぞれで作成することができますので、accepts_neseted_attributesをチェックその他