您可能会发现我很愚蠢,但我无法理解我们在路由文件中提供url和名称的基本知识
示例:
Route::get('/order/getOrders', 'OrderController@getOrders')-
>name('order.getOrders')->middleware('auth');
任何人都可以告诉我。 以及如果我们以url作为查看文件夹中文件位置的基础,例如(order-> getorder刀片文件)
然后,如果我的路径是layouts.site.topbar
,该怎么办?在视图而不是页面中,我的文件位于布局中。
编辑:
刀片文件
<a href="{{ route('sync.index') }}">
@if(isset($syncs))
@foreach ($syncs as $sync)
@endforeach
{{ $sync->session_date }}
@endif
</a>
控制器文件
TopbarController类扩展了Controller {
public function index()
{ die('o');
$syncNames = Sync::select('session_date','session_time')->where('user_id',$user_id)->get();
return view('layouts.site.topbar', array(
'syncs' =>$syncNames
));
}
public function sync_finish_session() {
die('s');
$user_id = Auth::id();
$sync_date = date('M d ',strtotime("now"));
$sync_time = date('M d, Y H:i:s',strtotime("now"));
$sync = Sync::where('user_id',$user_id)->get();
if(count( $sync) > 0) {
Sync::where('user_id',$user_id)->update(['session_date'=>$sync_date,'session_time'=>$sync_time,'user_id'=>$user_id]);
}
else {
$dates = new Sync();
$dates->session_date = $sync_date;
$dates->session_time = $sync_time;
$dates->user_id = $user_id;
$dates->save();
}
return $sync;
}
}
网络文件
Route::post('/sync_finish_session', 'TopbarController@sync_finish_session')->name('sync_finish_session')->middleware('auth');
Route :: get('/ sync / index','TopbarController @ index')-> name('sync.index')-> middleware('auth');
现在发生了什么问题,即使我死了也什么也没给,但它没有进入控制器文件。
答案 0 :(得分:1)
我认为这是个人喜好,而不是有规则。
我使用的约定是byte[]
这样,我可以创建类似的路线
name(<model>.<action>)
答案 1 :(得分:0)
您只需根据需要命名路线。没有严格的规则来命名路由。您可以将name('order.getOrders')更改为name(“ anyName”),并在模板中使用新名称。
答案 2 :(得分:0)
关于闲逛的Laravel documentaton说:
使用命名路由可以方便地生成URL或特定路由的重定向。
因此,您可以使用此name
来生成URL或重定向。例如:
您可以将其放在您的web.php
文件中:
Route::get('/image/index', 'API\SettingsController@index')->name('image.index');
然后在您的视图中调用该路线:
<a href="{{ route('image.index') }}">Le met see that index!</a>
{{ route('image.index') }}
引用您为其提供的名称。
答案 3 :(得分:0)
您可以为自己的路线命名。如果需要,可以将上述路线称为“ mySuperCoolRouteName”:
Route::get('/order/getOrders', 'OrderController@getOrders')-
>name('mySuperCoolRouteName')->middleware('auth');
,然后在视图文件中,您可以将此名称用作“简写”来获取/打印该路线的URL:
<a href="{{ route('mySuperCoolRouteName') }}">To My Cool Route</a>
将呈现给
<a href="/order/getOrders">To My Cool Route</a>