내 앱의 관리자 패널에서 간단한 양식을 작성하여 뉴스 레터를 보내고 있습니다. 두 개의 필드가 있습니다 : 제목 - 본문. 내가 SEND를 클릭하면 메일 뉴스 레터의 모든 가입 한 사용자에게 전송됩니다 원하는Laravel 4 : 양식을 통해 메일 보내기
는
을 (지금을 테스트하기 위해 첫 번째() : 단지 사용자가)하지만 난이 오류가 :보기 [메일 본문]을 찾을 수 없습니다.
내가 물어보고 싶은 것은 텍스트만으로 간단한 메일을 보내거나 메일 본문으로보기를 보내야한다는 것입니다.
도움이 될 수 있다면
이 내 메일러 클래스입니다 :<?php namespace Mailers;
class InvalidContactInfoException extends \Exception {}
abstract class Mailer {
public $to;
public $email;
public $subject;
public $view;
public $data;
public $options;
public function __construct($user)
{
if(!is_object($user))
{
throw new InvalidContactInfoException('Please pass a valid user object');
}
$this->data = $user->toArray();
$this->to = $user->username;
$this->email = $user->email;
}
public function deliver()
{
$self = $this;
return \Mail::send($this->body, $this->data, function($message) use($self)
{
$message->to($self->email, $self->to)->subject($self->subject);
});
}
}
이것은 Usermailer 클래스입니다 :
<?php namespace Mailers;
class UserMailer extends Mailer {
public function newsletter($subject, $body)
{
$this->subject = $subject;
$this->body = $body;
return $this;
}
}
그리고 컨트롤러 방법 :
public function sendNewsletter()
{
$input = Input::all();
$rules = array('subject' => 'required', 'body' => 'required');
$validation = Validator::make($input, $rules);
if($validation->passes())
{
$subject = $input['subject'];
$body = $input ['body'];
$user = User::first();
$mailer = new Mailers\UserMailer($user);
$mailer->newsletter($subject,$body)->deliver();
return Redirect::back()->with('message','Congratulations, the newsletter has been sent succesfully');
}
return Redirect::back()->withInput()->withErrors($validation)->with('message','There were validation errors');
}
프로세스 o f는 잘 작동하는 우편물을 보낸다. 왜냐하면 예를 들어 몸에 'master'라고 쓰면 전자 우편을 받는다 : subject는 form으로 삽입되고 body는 master view ....
그래서 문제는보기가 아닌 일반 텍스트를 보내려한다는 사실과 관련됩니다.
누군가 나를 도울 수 있습니까? 감사합니다!