Ruby on rails 从rails模型获取关联模型?

Ruby on rails 从rails模型获取关联模型?,ruby-on-rails,ruby-on-rails-3,Ruby On Rails,Ruby On Rails 3,在保存我的付款模型之前,我想为我的另一个模型Post设置一个属性 我的付款属于:用户,我的用户有多个:帖子和多个:付款 在my payment.rb中,我在创建:设置到期日期之前有一个回调 如何设置我的Post模型的过期日期 是这样的吗 def set_expiration_date self.User.Post.last.expiration = Date.today + self.duration.days end 由于付款尚未保存在数据库中,因此与用户的关联也未保存,因此创建之

在保存我的
付款
模型之前,我想为我的另一个模型
Post
设置一个属性

我的付款
属于:用户
,我的用户有
多个:帖子
多个:付款

在my payment.rb中,我在创建:设置到期日期之前有一个
回调

如何设置我的Post模型的过期日期

是这样的吗

def set_expiration_date
    self.User.Post.last.expiration =  Date.today + self.duration.days
end
由于付款尚未保存在数据库中,因此与
用户的关联也未保存,因此创建之前的工作是否会产生偶数

如果我喜欢一对一的协会付款方式,那会很简单吗

我通过以下方式保存付款记录:

#Payment.rb
def save_with_payment
  if valid?
      Stripe::Charge.create(
      :amount => 3000,
      :currency => "usd",
      :card => stripe_card_token,
      :description => "Charge for test@example.com")
    end
    save!
  end
支付模型确实有一个user_id属性,但它似乎总是为零

  SQL (1.1ms)  INSERT INTO "payments" ("amount", "created_at", "transaction_number", "updated_at", "user_id") VALUES (?, ?, ?, ?, ?)  [["amount", nil], ["created_at", Sun, 23 Feb 2014 14:50:42 UTC +00:00], ["transaction_number", nil], ["updated_at", Sun, 23 Feb 2014 14:50:42 UTC +00:00], ["user_id", nil]]

谢谢

um看起来像self.user return nil虽然付款属于:userah,但在创建之前它不是
。它应该是
after\u create
with after\u create,它似乎也不起作用,但我在日志中注意到,当创建付款记录[“user\u id”,nil]]时,可能关联有问题,这就是self.user为零的原因。如何创建付款对象?您是否在属性中添加了
user\u id
?您只保存了
没有任何属性!!分配用户id和您需要的其他属性怎么样?!
post = self.user.posts.last
post.expiration =  Date.today + self.duration.days
post.save!