问题标签 [route-model-binding]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
35 浏览

php - Route 使用 Slug,但功能需要 id

我正在使用 slugs 在我的网站中导航,但我需要将 id 连接到 slug 以实现功能。

功能:

这是我需要获取 ID 的功能。$request->id 不起作用,因为我的 $request->id 返回“null”。有什么方法可以获取连接到 slug/DB 行的 id?

如果需要更多信息,请告诉我。

我试过用

和类似的东西,没有任何效果。

0 投票
2 回答
255 浏览

laravel - 在控制器@索引中路由模型绑定?

我想设置一个获取Contact与 a 关联的所有 s的路由Customer。端点看起来像/customers/{customer}/contacts这样,它{customer}提供了应该返回联系人的上下文。我的routes/web.php样子是这样的:

我生成了--model=Contact指定的控制器。结果,一些方法带有开箱即用的类型提示,但该index()方法没有,并且实际上根本不会在提供任何参数的情况下运行。

来自CustomerContactsController.php

这将返回一个完全空白的屏幕。关联的 Blade 视图如下所示:

我仍然可以使用 访问控制器逻辑中的客户 ID Route::current()->parameters['customer'],但是没有更好/更简单的方法吗?

0 投票
1 回答
30 浏览

php - 注入控制器中的函数有多少模型名称[基于问题]?

在我做作业的前几天,一个问题导致我要解决很多天,这对我来说很奇怪,但不知何故我又遇到了这个问题,我很确定这是关于我在注射时如何命名我的模型它进入功能。这是完整的问题

在我打算使用 api 删除/更新数据之前,我正在使用:

我看到什么都不会发生,然后我改变$eventGallery了,$gallery然后我的问题解决了,有了这个,我发现这个问题存在于另外 2 个函数中。

在我的事件模型中,我与画廊名称有关系,而且它在受保护的字段中,现在又出现了这样的问题,但它根本不起作用,我也有EventVideo $videos但它不起作用,然后我将它更改为它$video并且它起作用了.

现在基于上述信息,我需要知道为什么会发生这种情况?如何改变$eventGallery or $videos$gallery or $video[related with videos name in Event model and protected with videos解决这个问题?

0 投票
2 回答
58 浏览

php - 如何从 url 获取大量参数但没有 (&)?

现在在 Laravel 我正在测试 url 并且在路由中我有

在控制器中,当我想传递参数时,我必须输入

如果我只想传递位置和屏幕,我在 url 第二个参数中有一个错误原因应该是行动。

我可以创建像

和控制器 $request->screen 和 location 工作正常。但是有什么方法可以不使用 & 吗?并这样做:

0 投票
1 回答
1133 浏览

php - Laravel 无法解析模型

我正在构建一个应用程序来跟踪费用,使用 laravel 5.8 作为后端。当我尝试访问控制器上的 show 方法时,我发现 laravel 给了我一个新的模型实例,而不是获取与提供的 id 匹配的模型。

我尝试检查从 URI 获取的实际值,这是正确的,并且还手动查询以查看它是否有任何结果,确实如此。我还检查了所有正确书写的名称(检查复数和单数)。

index 方法return Expense::all()工作得很好。

模型是空的,它只有一个$guarded属性。

这是位于routes/api.php的路由文件

这是位于app/Http/Controllers/ExpenseController.php的控制器

费用模型

我期望获得具有给定 id 的模型的 JSON 数据,但我得到的是一个新的模型$exists = false,没有得到任何 404 错误。

我也在使用 laravel/telescope,它显示请求以 200 代码完成,并且没有进行任何查询。

使用dd时的响应

这是整个类app\Model.php

修复:我在 RouteServiceProvider 中缺少 Web 中间件

0 投票
3 回答
3313 浏览

laravel - Laravel BelongsTo 通过关系

如何在 Laravel 中实现 BelongsToThrough 关系?

我有表:

类别属于项目

属性属于类别

我们怎样才能建立关系?

属性属于通过类别的项目

编辑问题。

因为我想在我的应用程序上进行多租户,而租户是 PORJECT。我想按项目分隔类别和属性。

CATEGORY 属于属于 PROJECT PROPERTY 属于属于 CATEGORY

所以我想通过 CATEGORY 建立 PROPERTY 和 PROJECT 之间的关系。现在,我需要补充:project_id类别属性表上,我认为这不是正确的方法。

0 投票
1 回答
518 浏览

php - Laravel Route Model Binding 在不同模型使用相同结构时发生冲突

我正在尝试为两个模型创建路由模型绑定:“用户”和“文章”

Route::get('/{user}', 'UsersController@show');

Route::get('/{article}', 'ArticlesController@show');

问题是,其中一个总是优先于另一个,这取决于它们被声明的顺序。

如果用户和文章碰巧有相同的路由,我希望用户路由优先于文章路由,但问题是 Laravel 在不匹配用户时返回 404 页面,即使路由应该匹配文章。

我知道您可以为此使用带有正则表达式的 where() 函数,但是这两个模型都对路由键名称使用相同的结构(它们都是字符串)。我可以让正则表达式搜索数据库列或其他东西吗?

0 投票
2 回答
261 浏览

laravel - Laravel 路由模型绑定可重用性

我正在为我的应用程序创建一个类似的功能,用户可以在其中喜欢帖子、事件、产品等。

我有一个 LikeController 和一个处理类似功能的 Trait

上面的代码是为了赞一个帖子

我不想复制代码并创建单独的函数来对事件或产品执行相同的操作,我想知道如何执行路由模型绑定并让应用程序只执行一个函数,根据什么传递模型信息被喜欢的帖子、事件或产品。

以下代码工作正常,但没有实现 DRY 原则

以下是特征

我的网络路由文件如下

所以我想要的结果是调用相同的方法并传递相关的模型。

提前致谢

0 投票
2 回答
433 浏览

laravel - Laravel 7 路由模型绑定不起作用(路由中的模型始终为空)

我正在做一个 Laravel 7 项目。在我的项目中,我正在做路由模型绑定。但它不起作用,并且路径中的模型总是返回 null。这是我到目前为止所做的。

我声明一条路线

如您所见,模型绑定有一个占位符 {category}。

这是我在控制器中的操作。

在 action 方法中,$category 始终为 null,即使我为它传递了正确的 id。我的代码有什么问题,我该如何解决?

0 投票
2 回答
118 浏览

laravel - 如何在 laravel 模型路由绑定中找到预期的参数名称

我有这样的路线

Route::get('/vcs-integrations/{vcs-provider}/authenticate','VcsIntegrationsController@authenticate');

和处理路由的方法我正在使用模型路由绑定发生如下

当我尝试访问路由时,由于参数名称不匹配,我得到 404。

那么,我如何知道 laravel 在路由模型绑定中期望的参数名称?