- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
总结:我无法访问 whereHas 函数中的 $domain 变量(如下); Laravel 返回以下错误:
"Undefined variable: domain"
我将我的关系包括在内,因为我不确定 Eloquent 性质以及我尝试调用此查询的方式是否会导致问题。
我有一个调用模型 (Org) 的中间件
Org 模型有字段
subdomain
组织模型有
public function domains()
{
return $this->hasMany('App\Domain');
}
域模型(表名域)有字段
domain, org_id
还有功能
public function org()
{
return $this->belongsTo('App\Org');
}
我可以在这个函数之前 dd($domain);
没有问题。然而,我得到了一个
"Undefined variable: domain"
对于下面 whereHas 函数中的查询参数。
为什么laravel看不到上面设置的变量?
namespace App\Http\Middleware;
use Closure;
class DomainLookup
{
protected $org;
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
$route = $request->route();
$domain = $route->parameter('domain');
$trimmed_domain = trim($domain, (config('app.domain')));
$this->org = \App\Org::where('subdomain',$trimmed_domain)
->whereHas('domains', function($q) {
$q->where('domain', $domain);
})
->get();
if ($this->org) {
return $next($request);
}
}
}
最佳答案
你需要在函数之后调用use
:
$this->org = \App\Org::where('subdomain',$trimmed_domain)
->whereHas('domains', function($q) use ($domain) {
$q->where('domain', $domain);
})
->get();
关于Php 变量没有传递到 whereHas 函数 - Laravel Eloquent,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48630465/
我正在从某个数据范围中选择所有ScheduledPrograms,其中包含属于某个用户的参加者。我想添加一个过滤器以仅选择数据透视字段 registered=1 所在的 SchduledProgram
我正在使用 Eloquent 构建应用程序并遇到了麻烦,我正在使用多对多 Pivot 关系。 引用:https://laravel.com/docs/5.0/eloquent#many-to-many
我有三个表: 交易模式: class Deal extends Model { protected $guarded = ['id']; public function hotel()
如何查询关系并仍然包含没有关系的模型?有两种型号 商店 产品 代码 // Store public function products() { $this->belongsToMany('App
这是我在这里发表的第一篇文章,所以请原谅任何错误:) 我目前正在从事库存管理应用程序(Laravel)的项目。我已经到了我所做的一切都不起作用的地步,所以现在我请求帮助。 我有一个包含产品的表,其中一
我有三个型号 Period , Post , User : period和 posts在 period_posts 上有 M:N 关系 posts和 user在 views 上有 M:N 关系 期间型
我正在努力避免 DRY在我的查询构建器中,特别是在链中添加额外的方法。 例如,这最初是我拥有的查询构建器: $products = $app->myShop->realProducts()
所以我想获得最后状态等于给定状态的请求我试过 first() 但它给了我一个错误并且限制不起作用 $requests = Request::whereHas('requestStatus', func
我有两个具有一对多关系的表。 预订 - (id) booking_tasks - (id, booking_id,user_id) 一个预订有很多任务一项任务有一个预订 预订模式: public f
我发现这些方法背后的概念和含义有点令人困惑,是否有人可以向我解释一下 has 和 with 之间的区别是,在示例的上下文中(如果可能的话)? 最佳答案 与 with() 用于急切加载。这基本上意味着,
我正在使用新的 whereHas 方法在 Laravel 4.1 中添加对急切加载关系的约束。 $broadcast = $broadcast->whereHas('season', function
我有两个表 - 联系人和访问: 联系人表 id | name ----- | ------- 1 | Joe 2 | Sally 访问表 id | con
我有两个具有多对多关系的主表和一个数据透视表。 模型“类型” public function attributes() { return $this->belongsT
假设我有两个模型, Block 和Slot 各自的表结构为:- blocks(id, name); slots(id, block_id, time, status); slots.status 的值
这是 Laravel 5 应用程序中 Eloquent 类之间的一些关系: B属于A B有一个C 表是用正确的外键构建的。这是 A 的作用域方法: public function scopeMySco
基于公寓查找器,显示/返回所有具有公寓的类型,基于表单搜索。这是使用 whereHas 查询完成的。 例如: A user has different choices; a garden/balcon
我使用此查询过滤掉具有城市和类别的商店。当我在 stores 表中有大约 1000 条记录时,它工作正常。现在,当我有 5000 条记录时,生成结果大约需要 3-10 秒。 在我的案例中,一家商店属于
这个问题是关于:Laravel (5.3) Eloquent - Relationship issue , 请访问此 url 以获取更多信息。 我最终得到了以下脚本: $genres = ['acti
问题:我只想在客户已经下了当年的订单的情况下获得他们。客户和订单位于两个单独的数据库中(这不能更改)。这些关系都已设置并正常工作,但是当我尝试以下操作时,我不断收到 SQL 错误,因为它试图在“客户”
目前我的模型集合中有这个 whereHas: $query = self::whereHas('club', function($q) use ($search) { $q->whereHas
我是一名优秀的程序员,十分优秀!