Laravel 5:使用动态页面

时间:2016-12-18 10:44:12

标签: laravel email pdf attachment

我有一份工作网站。求职者用户可以注册和构建他们的个人资料(在线简历),它用于一键式应用程序。

当求职者登录并点击“立即申请”按钮进入任何工作时,我希望Laravel将附带.PDF简历(从其在线简历构建页面生成)的电子邮件发送到雇主的收件箱。

注意:我不想将上传的简历(.pdf / .doc)发送到雇主的收件箱,因为我想宣传我网站的品牌/简历模板。

请告诉我如何实现这一目标。如果提供任何源代码,我将不胜感激。

谢谢。

1 个答案:

答案 0 :(得分:2)

您可以使用html到pdf转换器(类似http://github.com/barryvdh/laravel-dompdf)。这将以PDF格式创建用户个人资料。

用户点击该按钮后,将会收到一封发给雇主的电子邮件,附上来自用户的pdf。

看起来像这样:

    Mail::send('emails.reminder', ['user' => $user], function ($m) use ($user) {
        $m->to($user->email, $user->name)->subject('Your Reminder!');

        $m->attach($pathToFile);
    });

每封电子邮件都有自定义邮件:

    Mail::send('emails.reminder', ['user' => $user], function ($m) use ($user) {
        $m->from('hello@app.com', 'Your Application');
        $m->to($user->email, $user->name)->subject('Your Reminder!');

        $m->attach($pathToFile);
    });

这将创建PDF,将其保存到存储目录。您可以使用视图进行设计:

public function createCollageCron($load_id) {
    $load = Loads::findOrFail($load_id);

    $pdf = PDF::loadView('pdf.collage', compact('load'));
    if ($pdf->save(storage_path('app/loadings/'.$load->id.'/collage.pdf'))) {
        return true;
    } else {
        return false;
    }
}

希望这有效!