0

我是编码和 Laravel 5.1 的新手,在观看 Laracasts 的教程后,我一直在创建自己的网页。我遇到了无法修复的错误...

方法 [send] 不存在。

我的代码如下所示:

namespace App\Http\Controllers;

use Mail;
use App\User;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;

class ContactController extends Controller
{

    /**
     *
     * @param Request $request
     */
    public function emailContactForm (Request $request){
        $msg = $request->input('message');
        $name = $request->input('name');
        $email = $request->input('email');
        //
        $this->validate($request, [
            'title' => 'required|max 500',
            'name' => 'required',
            'email' => 'required',
        ]);
        //
        Mail::send(
            'emails.contactForm',
            [
                'message'=>$msg,
                'name'=>$name,
            ],
            function($m) use ($email) {
                $m->to('jessica.blake@autumndev.co.uk', 'say hi')
                    ->subject('new message')
                    ->from($email);
            }
        );
        //
        return;
    }
}

我正在尝试使用mail我们现在已经开始工作的功能,但发送仍然没有?有什么建议么?谢谢!

编辑:根据 laravel 日志文件的完整堆栈跟踪:http: //pastebin.com/ZLiQ7Wgu

4

1 回答 1

1

乍一看,您正在调用控制器方法 send(),但实际上是命名它emailContactForm()

您不发布路由和操作,因此现在的快速修复正在尝试重命名emailContactFormsend,尽管您可能需要查看所有相关的路由逻辑。

于 2015-07-23T13:59:22.433 回答