0

我有两张桌子预订和出租。用户预订要租的汽车,管理员批准租用。

当管理员批准租赁时。不再需要预订。如何在创建租赁记录的同时删除预订记录。

这是我的尝试(我是红宝石的新手,如果我很愚蠢,请道歉)

#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 回答