0

私は2つのテーブルの予約とレンタルを持っています。ユーザーがレンタカーを予約し、管理者がレンタルを承認します。

管理者がレンタルを承認すると。予約は不要になりました。レンタルレコードの作成と同時に予約レコードを削除するにはどうすればよいですか。

これは私の試みでした(私はルビーに不慣れなので、私が愚かであるならapolagies)

#rental_controller.rb
after_create :delete_booking

def delete_booking
  @booking = Booking.find(params[:id])
  @booking.destroy

respond_to do |format|
  format.html { redirect_to rental_url }
  format.json { head :no_content }
end
end
4

2 に答える 2

1

作成後は、コントローラーではなくモデルに属します。スニペットはレンタルコントローラーからのものであるため、レンタルモデルがあると想定しています。

レンタルモデルの場合:

after_create :delete_booking


def delete_booking
  @booking = Booking.where(:booking_no => self.booking_no).first
  @booking.destroy
end
于 2012-12-10T01:04:35.570 に答える
0

理想的には..のようなもの

# Booking.rb Model

has_one :booking

# Rental.rb Model

belongs_to :booking, :class_name => "Booking", :foreign_key => "booking_no"

after_create :delete_booking

private
  def delete_booking
    self.booking.destroy
  end
于 2012-12-10T05:11:34.137 に答える