为了账号安全,请及时绑定邮箱和手机立即绑定

无法访问字符串变量(“1”)上的属性(“名称”)

无法访问字符串变量(“1”)上的属性(“名称”)

PHP
胡子哥哥 2022-01-08 17:29:18
我怎样才能得到名字而不仅仅是id?这实际上是我在数据表 中的内容:当前数据表但我需要的是显示区域的名称而不是 id。我试图这样做:<table aria-describedby="dataTable_info" cellspacing="0" class="table table-hover dataTable" id="dataTable" role="grid" style="width:100%;" width="100%">                        <thead>                            <tr>                                <th>Areas</th>                                <th>Auditorias</th>                            </tr>                        </thead>                        <tbody>                            {% for audit in auditsByArea %}                                    <tr>                                        <td>{{ audit.id_Area.name }}</td>                                        <td>{{ audit.Audits }} <input style="width:0.8cm; height:0.8cm;background-color:##E4E8E9; border-radius: 8px; border-color:#3A93B2"  class ="mx-2" data-id="4" data-area="{{ audit.id_Area }}"data-responsible="4" data-startDate="<?php date('n/d/Y');?>" id="auditBtn" name="auditBtn" type='text' readonly  data-toggle="modal" data-target="#auditModal"></input></td>                                    </tr>                             {% endfor %}                        </tbody>                    </table>但我收到以下错误:无法访问字符串变量(“1”)上的属性(“名称”)。关于修复它的任何想法或建议?或者有什么问题?这是我在转储 AuditsByArea 时得到的:    array (size=3)  0 =>     array (size=2)      'id_Area' => string '1' (length=1)      'Audits' => string '1,2,3,4' (length=7)  1 =>     array (size=2)      'id_Area' => string '3' (length=1)      'Audits' => string '12,11,10,9' (length=10)  2 =>     array (size=2)      'id_Area' => string '5' (length=1)      'Audits' => string '17,18,19,20' (length=11)
查看完整描述

1 回答

?
慕尼黑8549860

TA贡献1818条经验 获得超11个赞

在您写的评论中,您的查询是:


SELECT id_Area, GROUP_CONCAT(id_Audit) as Audits 

FROM helios.fsa_audits 

WHERE id_Auditor='$AuditorId' 

GROUP BY id_Area;

添加要输出的信息:


SELECT id_Area, area.Name as area_name, GROUP_CONCAT(id_Audit) as Audits 

FROM helios.fsa_audits 

LEFT JOIN helios.fas_areas area USING (id_Area)

WHERE id_Auditor='$AuditorId' 

GROUP BY id_Area;

您可以通过以下方式在循环中访问它:


{{ audit.area_name }}

但是请注意,您使用的是普通的 php 数组,带有“手动”sql 查询,并且没有教义的 ORM 提供的任何功能。


查看完整回答
反对 回复 2022-01-08
  • 1 回答
  • 0 关注
  • 132 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信