Laravel形式路线未定义

时间:2019-04-20 13:41:27

标签: php laravel forms laravel-blade

我正在尝试以旧方式发送路由,而不使用Blade的{{}}标签。我遇到了一个问题,因为该框架抛出了未定义的路线。有人可以帮我吗?

这是我的表单标签:

<form method="POST" action="{{ route('companyStore') }}">

我的路线

Route::post('companyStore', 'CompanyController@store');

我的控制器(函数名称可能会帮助您理解)

public function store(Request $request){

        $company_name = $request->input('companyname');
        $company_sector = $request->input('companyname');
        $company_address = $request->input('companyaddress');
        $company_phone = $request->input('companyphone');
        $company_website = $request->input('companywebsite');
        $company_representative = Auth::user()->id;

        Company::create([
            'name' => $company_name,
            'sector' => $company_sector,
            'address' => $company_address,
            'phone' => $company_phone,
            'website' => $company_website,
            'representative_id' => $company_representative
        ]);

         $company = Company::where('representative_id', $company_representative)->first();
         User::where('id', $company_representative)->update(array('company_id' => $company->id));

         return redirect('/admin/home');
    }

错误始终是:

Route [companyStore] not defined. (View: 

3 个答案:

答案 0 :(得分:2)

使用route帮助程序时,它需要一个命名的路由。因此,将您的路线定义为:

Route::post('companyStore', 'CompanyController@store')->name('companyStore');

或使用:

<form method="POST" action="{{ url('/companyStore') }}">

或使用:

<form method="POST" {{ action('CompanyController@store') }}>

答案 1 :(得分:0)

您可以定义一条路线。

Route::post('companyStore', 'CompanyController@store')->name('companyStore');

并使用其中一个:

<form method="POST" action="{{ route('companyStore') }}">

答案 2 :(得分:0)

我不知道为什么@nakov支持{{ url('/companyStore') }}

只是改变

  

表格

Route::post('companyStore', 'CompanyController@store');

  

TO

Route::post('companyStore', 'CompanyController@store')->name('companyStore');

会工作