routes 相关问题

有关将URL映射到控制器和操作的问题。

为什么我的 Node.js 服务器从与 URL 中不同的位置获取文件?

我的 Windows Server 2022 数据中心(AWS 上的虚拟机)上有两个网站。我以一种非正统的方式设置它们。第一个位于 http://www.planetshah.com/pwv,另一个位于 http://www.plan...

回答 1 投票 0

Angular 17 <router-outlet> 工作错误

所以我正在以角度构建项目,我发现在开发工具中我可以看到我的路由器出口和组件是在其外部生成的,如下所示: 在此输入图像描述 应用程序路线 `进口...

回答 1 投票 0

Blazor 从 .NET 6 升级到 .NET 8 - NavigateTo 不起作用

我正在将正常运行的 .NET 6 应用程序迁移到 .NET 8。 这是一个完全的 WebAssembly 项目。我保留了这一点,但使用主页的服务器端渲染来改善用户体验......

回答 1 投票 0

定义 REST API 控制器的全局路由

我有以下情况:在.NET框架中可以为API控制器及其方法定义全局路由。通过获取默认值并添加控制器路由,您可以...

回答 2 投票 0

React Route:刷新部署的应用程序后未找到 404

我在一家公司工作,刚刚为他们部署了一个项目,但我遇到了一个问题。因此,当您访问链接 http://domain 时,您可以转到该页面,然后从那里您可以转到任何其他...

回答 4 投票 0

Next JS 中的相对路由

我正在使用 Next JS。 目前,我的页面位于 url 中 http://localhost:3000/project/613 现在,我想将页面推送到 http://localhost:3000/project/613/time/123 有什么办法可以推动相关...

回答 4 投票 0

我正在尝试从标头打开一个组件。我尝试过路线。当我单击链接的图标时,它将 /componentName 添加到本地主机,但没有任何反应

这是我的App.js 从“./Components.js/Heading.js”导入标题 导入'./App.css' 函数应用程序(){ 返回 ( ); } 出口德法...

回答 1 投票 0

使用express和handbars向博客添加评论功能

我正在尝试创建一个能够评论博客/文章的博客网站。我有终点 app.get('/post/:slug', 函数(req, res) { var _slug = req.params.slug; var 博客_...

回答 2 投票 0

Symfony2-Rookie:动态设置路径

ok,我设法将测试页的代码与 JMSTranslationBundle 结合起来在 twig 中切换语言,如下所示 好的,我设法将测试页的代码与 JMSTranslationBundle 结合起来在 twig 中切换语言 <li> <a href="{{ path("main", {"_locale": "en","name": name}) }}"> <img src="{{ asset('img/flags/gb.png') }}"></a></li> <li> <a href="{{ path("main", {"_locale": "de","name": name}) }}"> <img src="{{ asset('img/flags/de.png') }}"></a></li> 但这对path ("main")有用 我怎样才能让它动态地适用于我当前正在处理的页面/路线,包括所需的参数(在这种情况下"name": name?所以如果我当前在“关于我们”的英文页面上,我可以自动切换到德语页面关于我们,包括它的参数吗?或者我必须使用路径对每个树枝页面/模板进行硬编码吗? 这描述了一个与您正在寻找的扩展完全一样的扩展:http://blog.viison.com/post/15619033835/symfony2-twig-extension-switch-locale-current-route 可以通过注入 ScopeWideningInjectionException 来检索路由器和请求来修复 @service_container,而不是直接注入它们。 硬编码是一个坏主意,这是可以实现的,但据我所知还不是开箱即用的。为了提供具有相同路径和参数但针对不同语言环境的 url,我所做的就是创建一个自定义树枝扩展来执行此操作。 此扩展提供了一个新的 twig 函数,它将读取当前路由、当前参数、消除私有参数并为另一个语言环境生成相同的路由。这是有问题的树枝扩展: <?php namespace Acme\WebsiteBundle\Twig\Extension; use Symfony\Component\DependencyInjection\ContainerInterface; class LocalizeRouteExtension extends \Twig_Extension { protected $request; protected $router; public function __construct(ContainerInterface $container) { $this->request = $container->get('request'); $this->router = $container->get('router'); } public function getFunctions() { return array( 'localize_route' => new \Twig_Function_Method($this, 'executeLocalizeRoute', array()), ); } public function getName() { return 'localize_route_extension'; } /** * Execute the localize_route twig function. The function will return * a localized route of the current uri retrieved from the request object. * * The function will replace the current locale in the route with the * locale provided by the user via the twig function. * * Current uri: http://www.example.com/ru/current/path?with=query * * In Twig: {{ localize_route('en') }} => http://www.example.com/en/current/path?with=query * {{ localize_route('fr') }} => http://www.example.com/fr/current/path?with=query * * @param mixed $parameters The parameters of the function * @param string $name The name of the templating to render if needed * * @return Output a string representation of the current localized route */ public function executeLocalizeRoute($parameters = array(), $name = null) { $attributes = $this->request->attributes->all(); $query = $this->request->query->all(); $route = $attributes['_route']; # This will add query parameters to attributes and filter out attributes starting with _ $attributes = array_merge($query, $this->filterPrivateKeys($attributes)); $attributes['_locale'] = $parameters !== null ? $parameters : \Locale::getDefault(); return $this->router->generate($route, $attributes); } /** * This function will filter private keys from the attributes array. A * private key is a key starting with an underscore (_). The filtered array is * then returned. * * @param array $attributes The original attributes to filter out * @return array The filtered array, the array withtout private keys */ private function filterPrivateKeys($attributes) { $filteredAttributes = array(); foreach ($attributes as $key => $value) { if (!empty($key) && $key[0] != '_') { $filteredAttributes[$key] = $value; } } return $filteredAttributes; } } 现在,您可以通过捆绑包加载此服务定义或直接加载到位于 config.yml 下的 app/config 文件中来启用此树枝扩展。 services: acme.twig.extension: class: Acme\WebsiteBundle\Twig\Extension\LocalizeRouteExtension scope: request arguments: request: "@request" router: "@router" tags: - { name: twig.extension } 现在您可以在 twig 中执行此操作以提出当前加载页面的不同版本: <a id='englishLinkId' href="{{ localize_route('en') }}"> English </a> <a id='frenchLinkId' href="{{ localize_route('fr') }}"> Français </a> 希望这对您有所帮助,这就是您正在寻找的。 编辑: 看来直接缩小twig扩展的范围是不可能的。为了避免这种情况,请始终注入依赖项容器,然后检索所需的服务。这应该通过更改 twig 扩展的构造函数定义和扩展的服务定义来反映。我编辑了之前的答案,检查新更新的构造函数定义和新服务定义。 另一种可能的解决方案是注入一个帮助服务来负责本地化路线。该辅助服务应该在请求范围内。事实上,这就是我的代码中的内容。我有一个 RoutingHelper 服务注入到我的树枝扩展中。然后,在方法executeLocalizeRoute中,我使用我的助手来完成这项艰苦的工作。 告诉我现在一切是否正常。 问候, 马特

回答 2 投票 0

Express.js 在单独的文件中设置每个路由

我正在 express.js 中设置一个 Web 应用程序,为了让一切井井有条,我想将每个路由保存在自己单独的文件中,并将这些文件保存在两个文件夹中,一个用于 GET,一个用于 POST。怎么...

回答 3 投票 0

如何从 Flask 中的输入中获取表单数据作为变量?

我正在开发一个简单的 UI,通过 ID 启动和停止游戏。我写的基本HTML如下(game_id由JS填充): ... 我正在开发一个简单的 UI,通过 ID 启动和停止游戏。我写的基本HTML如下(game_id由JS填充): <div align="center" class="top"> <div align="left" class="game-id-input"> Game ID: <input type="text" name="game_id" id="game_id"> </div> <div align="right" class="buttons"> <form action="{{ url_for('start_game', game_id=game_id) }}" method="get"> <input type="submit" name="start" value="Start game" class="btn btn-success"></input> </form> <form action="{{ url_for('end_game', game_id=game_id) }}" method="get"> <input type="submit" name="end" value="End game" class="btn btn-danger"></input> </form> </div> </div> 看起来像 我还为每种形式定义了 Flask 路由函数: @app.route("/start_game/<game_id>") def start_game(game_id): # ... @app.route("/end_game/<game_id>") def end_game(game_id): # ... 在我的表单中,如何使 game_id 对应于 game_id 中的 #game_id? 目前,当我提交开始和结束游戏时,我收到“找不到文件”错误,因为它只是将文字 <game_id> 添加到路线中。 我是网络开发新手。这应该是微不足道的,但我不知道要搜索什么。提前抱歉问这么简单的问题。 您尝试根据用户输入生成 url,但当 Jinja 在服务器端渲染模板时,用户输入不可用,它仅在客户端可用。 因此,如果您想将游戏 id 作为 URL 参数发布到 URL,则必须使用 JavaScript 在客户端构建该 URL。 对于您想要做的事情来说,这并不是真正必要的。 您可以使用 request.form['name'] 获取命名输入的提交值。 按钮就像任何其他输入一样,因此您可以命名它们以了解所采取的操作。 @app.route('/manage_game', methods=['POST']) def manage_game(): start = request.form['action'] == 'Start' game_id = request.form['game_id'] if start: start_game(game_id) else: stop_game(game_id) return redirect(url_for('index')) <form method="POST" action="{{ url_for('manage_game') }}"> <input type="text" name="game_id"/> <input type="submit" name="action" value="Start"/> <input type="submit" name="action" value="Stop"/> </form> 即使这样也比您需要的更详细。 鉴于您知道游戏是否已经在进行中,只需切换当前状态而不是选择操作。 开始已经开始的游戏是没有意义的,只能停止它。 我无法发表评论,但我想纠正davidism的代码。 我相信您需要在表单元素中执行操作,并使用与服务器 python 代码中的函数相对应的值才能正常工作。虽小但重要的更正。所以它会是这样的: 在你的 server.py 中: @app.route('/manage_game', methods=['POST']) def manage_game(): start = request.form['action'] == 'Start' game_id = request.form['game_id'] if start: start_game(game_id) else: stop_game(game_id) return redirect(url_for('index')) 在您的 HTML 中: <form method="POST" action=/manage_game> <input type="text" name="game_id"/> <input type="submit" name="action" value="Start"/> <input type="submit" name="action" value="Stop"/> </form>

回答 2 投票 0

如何将 WordPress 博客页面集成到具有 Node.js 后端的 Next.js 路由中?

我有一个 Next.js 项目,我想在其中显示博客文章的特定 WordPress 页面。例如,在路由博客上,我想显示一个包含与之相关的博客信息的 WordPress 页面

回答 1 投票 0

如何使用 Android 上的移动数据接口通过 WiFi 和其他所有内容路由本地流量?

我有一部已root的android 13手机(oneplus 10 pro),在家里我有一个用于智能家居设备NAS和CCTV的本地WiFi网络,该网络未连接到互联网。 如果我连接到这个

回答 1 投票 0

Angular 6 页面刷新时延迟加载路线导航

我正在研究 Angular 6 延迟加载并遇到问题。 我有一个登录页面,登录后可以在启动应用程序时加载该页面,其中有一个主页具有单个选择下拉列表...

回答 1 投票 0

AWS 使用 Angular 放大路由

我已经构建了 Angular 8 应用程序,并通过连接到我的存储库中的分支来部署到 AWS amplify。路由适用于我的本地主机,也适用于已部署的版本。问题是当我重新定位时...

回答 2 投票 0

路由问题:URL 不变

我创建了一个页面来编辑消息,我可以编辑我的消息并保存在我的数据库中。保存后,我返回 View::make("messages.index"); 但如果我查看 URL,它是:http://localhost:8000/

回答 2 投票 0

多个 Angular 项目的 .NET Core 路由中的 app.MapWhen() 问题

我在 .NET Core 中处理应用程序中的路由时遇到了 app.MapWhen() 方法的技术问题。 语境 我有两个 Angular v15 项目作为我的 .NET Core 6 应用程序的前端...

回答 1 投票 0

在 Next.js 页面路由器中创建 [slug].tsx

我正在尝试使用页面路由器框架在 Next.js 中开发一个应用程序。因此,对于每个组件,我在相关文件夹名称下都有 page.tsx 。对于特定组件,我需要有用于路由的 slug,

回答 1 投票 0

laravel 新更新,省略了 api.php,我无法使用它

由于LARAVEL省略了API.PHP,当我定义路由时,Route:: API Resource('students', Student Controller::class);我访问 http://localhost:8000/api/students 我得到“路线 API/

回答 1 投票 0

Nextjs 路由处理程序设置 cookie 不起作用

我目前在 Next.js 14 路由处理程序中设置 cookie 时遇到问题。我已通过控制台日志确认令牌已正确包含在 Set-Cookie 标头中,但是

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.