php - 我如何将数据发送到控制器
问题描述
我正在建立一个论坛,并且正在尝试实现一个类别页面。该页面目前正在运行,它是动态的,因此它列出了存储在数据库中的所有类别。但是,我希望能够单击一个类别并被带到一个模板页面。从这个模板页面我想传递一个category ID
(在数据库中定义为主键)。然后将显示具有匹配类别 ID 的所有帖子。我无法将其传递category ID
给我的类别页面模板。
任何帮助将不胜感激!
(类别如何在列表中显示:)
@foreach($categories as $row)
<div id="newscontainer" class="container">
<?php $categoryid = $row->id; ?>
<a href="/category"><span id='categoryname'><?= $row->categoryname ?><br></span></a>
<span id="categorydescription"><?= $row->categorydescription?></span>
</div>
<br>
@endforeach
谢谢!
解决方案
您可以创建一个 Web 路由来处理类别调用并返回具有该类别及其帖子的视图。
首先,您创建这样的路线:
Route::get('category/{category}', 'CategoriesController@show')->name('category.show');
然后您可以Category
在控制器内部访问它并加载帖子并像这样返回它们:
public function show(Request $request, Category $category) {
return view('category.show', compact('category'));
}
然后在您看来,您将有类似这样的内容,您可以在其中循环访问可用的帖子:
@foreach($category->posts as $post)
// do something
@endforeach
要调用路由,您只需创建此链接:
<a href="{{ route('category.show', ['category' => $id]) }}">Show</a>
如我所见,您的基本命名空间是,因此您的班级ULMG
的正确方法是Category
ULMG\Category
推荐阅读
- go - 将字符串连接到结构切片
- node.js - Angular 6 和 NodeJS - 如何清理缓存?
- python - 使用 Pathlib 搜索特定文件夹
- php - Laravel CustomServiceProvider Class not found in package when required
- ubuntu - 如何在 Ubuntu 上使用带有 Python 虚拟环境的 UWSGI 设置 GraphVIZ 可执行文件的路径?
- .htaccess - 如何在 htaccess 中仅将特定子域重定向到 HTTPS?
- reactjs - React 哈希路由和子路由
- mule-esb - Mule ESB db 模板查询抛出错误
- python - 如何使用python解析和存储从api url下载的json数据到SQLite DB表中
- java - 如何调整这 3 个线程的控制流?