간단한 질문이 무엇인지에 대한 답변을 찾고 있습니다. 누구든지 올바른 방향으로 나를 가리킬 수 있습니까, 아니면 적어도 내가 무엇을 찾고 있어야하는지 말해 줄 수 있습니까?Rails3 메일러의 경로/URL 경로에 변수 추가
은 내가 Rails3 베타 시스템에게 라 라이언 베이츠 초대 구현하고있어 - http://railscasts.com/episodes/124-beta-invitations
메일러는 상대 링크를 생성합니다. 호스트 경로를 준비하는 방법은 무엇입니까? (이미 config.action_mailer.default_url_options가 development.rb에 설정되어 있습니다.)
- 내 경로 파일의 관련 비트.
devise_for :users, :path_prefix => 'registration', :controllers => {:registrations => 'users/registrations'} do
get "registration/users/sign_up/:invitation_token" => "users/registrations#new"
end
레일스의 업데이트를 반영하고 Devise와 잘 어울리는 부분을 약간 조정했습니다. 컨트롤러는 이제이 같은이
class InvitationsController < ApplicationController
def new
@invitation = Invitation.new
@title = "Invite a friend"
end
def create
@invitation = Invitation.new(params[:invitation])
@invitation.sender = current_user
if @invitation.save
if user_signed_in?
Mailer.invitation(@invitation, new_user_registration_path(@invitation.token)).deliver
redirect_to root_url, :notice => "Thank you, your friend will receive their invitation soon."
else
redirect_to root_url, :notice => "Thank you, we'll let you know when the next batch of invites are availale."
end
else
if current_user.invitation_limit > 0
render :action => 'new', :alert => "Sorry, there was a problem! Please try a again."
else
redirect_to root_url, :alert => "Sorry, you don't have any invitations left. Please wait until we issue more."
end
end
end
end
그리고 우편물과 같습니다
class Mailer < ActionMailer::Base
def invitation(invitation, sign_up)
subject 'Invitation'
recipients invitation.recipient_email
@greeting = "Hi"
@invitation = invitation
@signup_url = sign_up
@sender = invitation.sender_id
invitation.update_attribute(:send_at, Time.now)
end
end
나는 이런 일이 왜 더 잘 이해 될 수 있도록하는 어떤 포인터를 주셔서 감사합니다.
감사합니다.
포인터에 감사드립니다. _url이 트릭을했습니다. 원래 질문에 관련 경로를 추가했습니다. 제공 할 수있는 조언을 더 많이 생각해보십시오. 또한, 이것에 관한 좋은 정보 출처는 어디입니까? 아마도 API 문서의 잘못된 부분을보고있을 것입니다. –
저는 두 가지 질문을했습니다. 첫 번째 질문에 대한 답변을 수락하고 두 번째 질문을 자체 질문으로 나눌 것입니다. 당신이 제안 할 수있는 충고를 환영합니다. http://stackoverflow.com/questions/5830985/formatting-routes-urls-in-rails-with-devise –