【发布时间】:2014-06-28 01:58:32
【问题描述】:
我正在使用 Mailboxer,以便用户可以回复我网站上的帖子。我的网站中有两种类型的帖子模型可供用户回复,请求和优惠。
这是我的消息控制器:
class MessagesController < ApplicationController
# GET /message/new
def new
@request = Request.find(params[:request])
@message = current_user.messages.new
@user = @request.user
end
def reply
@conversation ||= current_user.mailbox.conversations.find(params[:id])
end
# POST /message/create
def create
@user = User.find(params[:user])
@body = params[:body]
@subject = params[:subject]
current_user.send_message(@user, params[:body], params[:subject])
flash[:notice] = "Message has been sent!"
redirect_to :conversations
end
end
在new 操作中,我使用@request,但如果我回复Offer 帖子,我需要使用@offer 变量。有没有一种方法可以使用 if 语句在 @offer 和 @request 之间进行选择,具体取决于调用 new 操作的视图?这是解决此问题的最佳方法吗?
【问题讨论】:
标签: ruby-on-rails if-statement