当前位置: 首页 > 知识库问答 >
问题:

Symfony路由、单独路由设置和忽略_区域设置前缀?

慎星纬
2023-03-14

我在我的注解里有。yaml使用注释管线设置的以下设置:

controllers:
    resource: '../../src/Controller/'
    type: annotation
    prefix:
        en: ''
        sr: '/es'
        de: '/fr'
kernel:
    resource: ../../src/Kernel.php
    type: annotation

我这里的问题是,我可以创建一个像mysite这样的独立区域吗。com/userarea是否不带区域设置前缀?

这是保护区,我可以使用用户语言。我尝试使用这个symfony路由文档,但我希望保留注释。

目前它看起来像mysite.com/es/userarea,但我希望mysite.com/userarea

共有1个答案

罗宪
2023-03-14

是的,您可以在控制器上创建专用命名空间,并创建另一个注释配置,如下所示:

controllers:
    resource: ../../src/Controller/*
    exclude: ../../src/Controller/Admin
    type: annotation

secure_area:
    resource: ../../src/Controller/Admin/*
    prefix: /userarea
    type: annotation
 类似资料:
  • 我只在个人项目中使用symfony路由组件(没有完整的symfony框架)。我的方法是:在文件如下: 我的路由工作正常,但我需要添加自动区域设置前缀uri/路由多语言系统像这样: 如何在文件并删除默认的区域设置前缀语言?!

  • 我需要能够定义部分是可选的路由。这意味着我需要这些URL使用相同的控制器: (语言环境将由请求侦听器设置) 这同样适用于: 问题是我不能定义两个class注释,因为这是无效的/Symfony不接受的;我不能在我的控制器类中复制每一条路由,因为会有大量的路由,这将非常糟糕! 我尝试过只使用一个类注释,但无法使其正常工作。以下是我的尝试: 结论: 作品 作品 失败(因为只有可以工作) 工作 我以为问题

  • 我在symfony 2.5中的区域设置路由遇到问题。假设我的默认语言是英语。我的示例路由是/user/register/。如果我要求它没有任何语言环境,它应该出现在英文翻译。如果我使用区域设置(例如/fr/user/register/)请求它,它应该与它一起出现。这可以通过以下方式完成: 现在我必须回答以下问题: 我如何简单地避免用户可以使用默认语言作为区域设置来调用路由?在我的示例中,英语是默认

  • 说明: callback Gateway::$router 设置Gateway到BusinessWorker路由规则。默认规则是Gateway随机选择一个BusinessWorker进程,然后把当前client_id与这个BusinessWorker进程绑定,以后这个client_id的所有数据(onConnect/onMessage/onClose事件)都交给这个绑定的BusinessWorke

  • 什么是路由设置呢?前面介绍的 MVC 结构执行时,介绍过 beego 存在三种方式的路由:固定路由、正则路由、自动路由,接下来详细的讲解如何使用这三种路由。 基础路由 从 beego 1.2 版本开始支持了基本的 RESTful 函数式路由,应用中的大多数路由都会定义在 routers/router.go 文件中。最简单的 beego 路由由 URI 和闭包函数组成。 基本 GET 路由 beeg

  • 在源服务(“cluster_a”)和目标服务(“cluster_b”)之间启用区域感知路由需要执行几个步骤。 在源服务上的Envoy配置 本节介绍与源服务并行运行的Envoy配置。这些要求是: Envoy必须使用--service-zone选项启动,该选项定义了当前主机的区域。 源和目标集群的定义都必须具有sds类型。 local_cluster_name必须设置为源群集。 以下配置中仅列出了集群