我对Laravel很新,我不太清楚要搜索什么才能获得好结果,请原谅我,如果有这么多人,我真的不知道该搜索什么,但我有试过。
在Laravel中,我的视图中基本上有8个链接,每个链接都被路由到相同的控制器和URL。
我想要实现的是,对于每个点击链接,单个控制器需要知道点击了什么链接...我已经通过使用单独的控制器实现了这一点,但是当我意识到我需要在每个控制器上改变一些东西,我意识到这不可能是Laravel,甚至PHP应该如何用于获得最佳性能。
所以在我看来,我有8个......
{{ '<p class="green"><A href="#">Default Notice</A></p>' }}
所有标签之间都有不同的文字,我希望单个控制器能够知道按下了哪个按钮,以便更新数据库中与所点击的链接相对应的8列中的1列。
我已经设置了数据库模型,这不是问题。问题是能够在单个控制器中确定哪些链接已被点击,因此我可以继续说...
if($link == 'a certain name'){
$model->acolumnname = 1;
}
我希望自己解释一下? 非常感谢
答案 0 :(得分:0)
为什么不使用普通的'查询字符串? (如果您不想传递参数)
(顺便说一句,为什么在写出简单的html时使用刀片?)
<p class="green"><A href="{{url('/?link=1')}}">Default Notice</A></p>
<p class="green"><A href="{{url('/?link=2')}}">Default Notice</A></p>
<p class="green"><A href="{{url('/?link=3')}}">Default Notice</A></p>
说你有这条路线:
Route::get('/', 'MyController@method');
在MyController类中:
public function method()
{
# if not present, defaults to `null`, or pass a second paramenter to make
# it the default one
$link = Request::query('link');
if($link){
$model->acolumnname = $link;
}
}
答案 1 :(得分:0)
您可以像这样创建一个Controller
:
class PageController extends BaseControlle {
public function page($page = null)
{
if(!is_null($page)) {
// Page Model
$data = Page::where('slug', $page)->get();
return View::make('page')->with('data', $data);
}
}
}
在routes.php
文件中,您可以添加以下路线:
Route::get('page/{slug}', array('uses' => 'PageController@page', 'as' => 'page.show'));
要为您的网页生成链接,您可以在view
:
<a href = "{{ route('page.show', array('slug' => 'home')) }}">Home</a>
<a href = "{{ route('page.show', array('slug' => 'about')) }}">About</a>
// More...