📅  最后修改于: 2023-12-03 15:14:48.273000             🧑  作者: Mango
Drupal 8 是一个流行的开源 CMS 平台,提供了强大的路由系统,允许开发者定义 URL、路由和参数。本文将介绍 Drupal 8 路由参数,让程序员了解它们是什么以及如何使用它们。
路由是用于将 URL 映射到特定操作和功能的机制。路由参数允许在 URL 中传递额外的数据,以便在应用程序中使用。
例如,让我们考虑如下 URL:
http://example.com/user/123
这里,“user”是路由名,而“123”是路由参数。在 Drupal 8 中,您可以通过参数名称来访问这些参数(例如,user/123 页面的用户 ID 参数)。
要在 Drupal 8 中添加路由参数,您需要记录路由定义时使用的参数名称。例如,这是一个基本的路由定义:
mymodule.myroute:
path: '/mymodule/{param}'
defaults:
_controller: '\Drupal\mymodule\Controller\MyController::myFunction'
_title: 'My Page'
requirements:
_permission: 'access content'
param: '.+'
在这个定义中,我们在 URL 的末尾使用了“{param}”,定义了一个叫做“param”的路由参数。
如果您想在控制器函数中使用路由参数,您可以像下面这样使用它们:
<?php
namespace Drupal\mymodule\Controller;
use Drupal\Core\Controller\ControllerBase;
use Symfony\Component\HttpFoundation\Response;
class MyController extends ControllerBase {
public function myFunction($param) {
$html_output = '<p>The value of my parameter is: ' . $param . '</p>';
return new Response($html_output);
}
}
在这个例子中,我们通过将参数“$param”传递给控制器函数来获取路由参数“param”的值。
以上是 Drupal 8 路由参数的基础知识,希望能为您提供帮助。