我想创建一条路线,例如
get '/referrals/send_invite/:email_address'
我将通过remote: true
和调用这条路线GET
。但是,如果我在浏览器中发出 GET 请求,路由仍会尝试查找视图,从而导致我:
Template is missing
有没有一种方法可以告诉 rails 中的send_invite
方法Referrals Controller
没有关联的视图?
我希望这可以通过使用 rails 路线来完成。
谢谢。
我想创建一条路线,例如
get '/referrals/send_invite/:email_address'
我将通过remote: true
和调用这条路线GET
。但是,如果我在浏览器中发出 GET 请求,路由仍会尝试查找视图,从而导致我:
Template is missing
有没有一种方法可以告诉 rails 中的send_invite
方法Referrals Controller
没有关联的视图?
我希望这可以通过使用 rails 路线来完成。
谢谢。
不完全确定,但我猜你想开始行动send_invite
,所以你对实际结果不感兴趣,对吗?
你可以做类似的事情
def send_invite
SomeMailer.mail(:email => params[:email_address])
# or queue it or whatever
head :ok
end
请注意,这不是唯一的选择,您还可以执行类似的操作
render :text => "The mail has been sent to #{params[:email_address]}"
或者
render :json => {:result => 'ok', :email_adress => params[:email_address]}
还要注意这应该是一个 POST,因为这个动作不是幂等的(GET 不应该有副作用)。
希望这可以帮助。
您的模板丢失很可能是由于没有sendinvite.js.erb
. 试着在你的里面放一个空白的view folder
,看看能解决什么问题。