<%= form_tag :action=> "send_mail", :controller=> "emailer" %>
... some details deleted here ...
<input type="submit" value="Send" class="primary" />
<%= %>
and I have a send_mail.html.erb template with some content (thanx for
your mail...)
In this setup I get an error: Missing template emailer/
contact_email.html.erb
When I add an empty template of that name, everything works nicely.
My question is: WHY do I need a template with the same name as a
method in the model? So far as I understand Ruby, I am expected to
have a template for the controller method - but why for the model.
And: If I put some content into that file it is not displayed.
So: What happens with the content in emailer/contact_email.html.erb ?
In this setup I get an error: Missing template emailer/
contact_email.html.erb
When I add an empty template of that name, everything works nicely.
My question is: WHY do I need a template with the same name as a
method in the model? So far as I understand Ruby, I am expected to
have a template for the controller method - but why for the model.
Where do you thing the content for the email is coming from? Just as
actions in a controller are backed by template files so are methods in
an ActionMailer object.
And: If I put some content into that file it is not displayed.
So: What happens with the content in emailer/contact_email.html.erb ?
> Still I am not sure how to solve this for send_mail.html.erb, but
> probably a render function is missing here or not correct.
What was the problem here?
The same problem (but it seems to have a different answer).
In contact_email.html.erb I did not get access to variable @recipients
but only to variable @email_body, looks like this is rendered off the
hash table @body. But in send_mail.html.erb neither the one nor the
other works. I would, however, want to present the user with a copy of
the mail he sent via the form in the browser, so I need to know how
the send_mail.html.erb template can access the email body.
Still I am not sure how to solve this for send_mail.html.erb, but
probably a render function is missing here or not correct.
What was the problem here?
The same problem (but it seems to have a different answer).
In contact_email.html.erb I did not get access to variable @recipients
but only to variable @email_body, looks like this is rendered off the
hash table @body. But in send_mail.html.erb neither the one nor the
other works. I would, however, want to present the user with a copy of
the mail he sent via the form in the browser, so I need to know how
the send_mail.html.erb template can access the email body.
the send_mail template knows absolutely nothing of what happened in
the mailer. By the time send_mail.html.erb is rendered the
actionmailer object with those instance variables probably doesn't
even exist anymore.
Given that those values were just things pulled out of the params hash
the send_mail view/its associated controller action can just do the
same thing.