특정 사용자가 제품에 대한 관심을 요청한 경우 전자 메일을 보낼 수 있습니다. 내 전자 메일에는 사용자가 가져온 특정 정보가 포함되기를 원하지만 현재로서는 응용 프로그램의 다른 곳에서이 줄이 사용 되더라도 정의되지 않았기 때문에 오류가 발생합니다. 나는 아래의 이메일을 복사 할 것이고 < %%> 사이의 것은 내가 포함시키고 자하는 것이고 누가 올바른 방향으로 나를 가리킬 수 있는지, 그리고 정확하고 그렇지 않은 것이 어떤 것인지 말해 줄 수 있는지 궁금해하고있다. 어떤 도움이라도 훌륭합니다. 보내려는 메시지는 다음과 같습니다.ActionMailer 메시지 배달 내용
Hello <%@user.username%>
The user <% current_user.username %> has registered an interest in the following product of yours:
<% @game.game_name %>
<% @game.console %>
<% @game.genre %>
The user <% current_user.usernames %> has the following games for offer:
<% current_user.game.game_name %>
<% current_user.game.game_name %>
<% current_user.game.game_name %>
To view <% current_user.username %> profile click <% link_to "here", current_user.show %>
If you wish to contact the user by email then contact the following email <% current_user.email %>.
나는 희망이 있습니다. 내가 갖고있는 것에 더 많은 통찰력을주기 위해 사용자 정보와 user_id 외래 키가있는 게임 정보가있는 게임 테이블을 포함하는 users 테이블이 있습니다. 사용자는 has_many 게임을 소유하고 게임은 belongs_to 사용자를 갖습니다.
UPDATE
class GameTrade < ActionMailer::Base
default :from => "[email protected]"
def game_interest(user)
@user = user
@game = game
mail :to => user.email, :subject => "Game Interest"
end
end
여기에 메일러 방법을 포함 할 수 있습니까? 당신이 @ 게임을 어떻게 설정하는지보고 싶습니다. –
안녕하세요 Ben, 내 우편물 방법으로 내 게시물을 업데이트했습니다. '@game = game'이라고 적힌 '@user = user'아래에 줄이 있었지만 작동하지 않습니다. – user1222136
맞습니다. 그래서 game_interest 메일러 함수에서'@ game'을 설정하지 않으므로,보기에서 설정되지 않습니다. 메서드 매개 변수로'game'을 전달하거나 다른 방법으로 가져올 수 있습니다 (예 : 앱에서 관계가있는 경우 @ user.game). –