- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个运行正常的 sql 查询
SELECT
*
FROM
jml_gkb_eventos
WHERE
id IN (SELECT
evento_id
FROM
jml_gkb_etiqueta_evento
WHERE
etiqueta_id IN (SELECT
id
FROM
jml_gkb_etiquetas
WHERE
etiqueta REGEXP ? ) group by evento_id having count(evento_id) = ?);
但我不知道如何将此 sql 查询转换为 Eloquent 模型查询。我知道我已经接近解决方案(与此问题相关 here )并尝试了以下代码的一些变体:
$pesquisa = preg_split('/\s+/', $temp, -1, PREG_SPLIT_NO_EMPTY);
$cadeiapesquisa = implode('|', $pesquisa);
$contagem = count($pesquisa);
if (Session::get('modo') == 0){
if ( strlen($cadeiapesquisa) > 0 ){
$this['records'] = Evento::with('etiquetas')->whereHas('etiquetas', function($query) use ($cadeiapesquisa, $contagem){
$query->where('etiqueta', 'regexp', "$cadeiapesquisa")->groupBy('evento_id')->having('COUNT(evento_id) = '.$contagem);
})->orderBy('id', 'DESC')->paginate(25);
} else {
$this['records'] =Evento::paginate(25);
}
}
我让它在内部查询中没有 ->having() 部分的情况下工作,显然没有预期的返回,但没有错误。
我做错了什么?
TIA
JL
[编辑] - 使用上面的代码我收到以下错误:
最佳答案
我发现了问题。这是因为 'count()' 部分没有被 eloquent 处理。将计数放在 DB::raw 上至少在我所做的测试中按预期工作。经过一些调整的整个代码片段是:
$pesquisa = preg_split('/\s+/', $temp, -1, PREG_SPLIT_NO_EMPTY);
$cadeiapesquisa = implode('|', $pesquisa);
$contagem = count($pesquisa);
if (Session::get('modo') == 0){
if ( strlen($cadeiapesquisa) > 0 ){
$this['records'] = Evento::with('etiquetas')->whereHas('etiquetas', function($query) use ($cadeiapesquisa, $contagem){
$query->where('etiqueta', 'regexp', "$cadeiapesquisa")->groupBy('evento_id')->having(DB::raw("COUNT('etiqueta_id')"), '>=', $contagem );
})->paginate(25);
} else {
$this['records'] = Evento::paginate(25);
}
}
JL
关于mysql - 十月 cms - Eloquent - 从 sql 查询创建模型查询的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43007491/
我创建模型,有列: like4u_id、vtope_id、panel_id 我设置了这些列选项 - 可为空,但如果我保存模型,我会收到错误消息: SQLSTATE[HY000]: General er
我一直在查看十月 CMS 路由 ( https://octobercms.com/docs/plugin/registration#routing-initialization ) 的文档,但我认为我
你能告诉我如何获得当前的语言名称或类似的东西。 我想在基于十月 CMS 的网站上自定义区域设置切换器。 收到类似的东西会很棒 ... {{ set var = ****.getLocale();}}
在 OctoberCMS 中实现自定义字段等功能的最简单方法是什么(类似于: https://craftcms.com/features/custom-fields 或 https://www.adv
我正在尝试创建一个位于 OctoberCMS 系统之外的目录。在 .htaccess 文件中,我添加了以下行: RewriteCond %{REQUEST_URI} !public/.* [NC] 对
首先,我只想说明我在 justhost.com 上的共享主机上,所以我不排除它们是可能的罪魁祸首和最低限度的适当 PDO 支持。我只知道该网站在出现错误之前工作了一段时间,几乎没有什么变化。 我正在使
使用十月 cms 的 build 422 和 Rainlab 博客插件,不可能有非英文 slug 的博客文章,每次都说“The slug format is invalid”。 是否有解决此限制的解决
我很高兴十月 CMS 最近添加了用于在 ListView 中对记录进行排序的后端功能。但是我在让它工作时遇到了一些麻烦。文档是 here .我遵循了这样的方向: 在我的 Controller 中,我实
如果我在尝试调用 AJAX 操作时遇到此错误,可能是什么问题? Invalid handler name. The correct handler name format is: "onEvent"
我开始使用 Laravel,但 MySQL 结果有问题: 我的请求很简单$query = DB::select('select * from my_table '); 在我的表中,我有列(id、标题、
我有一个运行正常的 sql 查询 SELECT * FROM jml_gkb_eventos WHERE id IN (SELECT evento_id FROM
我是 October CMS 的新手,正在学习创建表单小部件。但我收到以下错误: The partial '_field_actorbox.htm' is not found. /opt/lampp/
我在本地环境中遇到一个奇怪的问题:wamp64MySQL 5.7.14十月CMS 382 这在几个插件中都遇到过,例如这个试图在后端显示幻灯片列表的插件 Syntax error or access
如果该行的“月份”列中的月份 ==“十月”、“十一月”、“十二月”,我将尝试从数据框中的“yy”列中减去 (1) 年。 我尝试了很多方法,但都陷入了困境。下面的循环使整个 yy2 列成为 yy-1,而
我已经能够扩展 Backend\Models\User 类并添加范围查询方法以仅检索 super 用户: public function boot() { User::extend(funct
我是一名优秀的程序员,十分优秀!