账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    thinkphp6 hasOne 查询的问题
    15
    0
    现在有两张表:表1(ProjectTax)中包含字段id, category_id表2(TaxCategory)中包含id, category_name我想在查询表1的时候,同时将表2的category_name字段包含到查询结果里来。在表1的模型中,我新增了关联定义:public function taxCategory(){ return $this->hasOne(TaxCategory::class, "id", "category_id");}然后在控制器中查询:$data = ProjectTax::with('taxCategory')->where('project_id', $id)->select();return json($data);得到的结果如下,taxCategory这个字段把关联表的所有字段都给包含进来了(id, tax_name, sort_id)请问怎么做才可以让taxCategory这个字段只包含tax_name字段的值呢?我理想的返回结果是 ……taxCategory: "增值税"……或者,如果能把taxCategory显示为tax_name/category_name这样更好了……category_name: "增值税"……再简单一点说,就是让taxCategory包含的是关联表的某个字段,而不是整个表。我尝试过修改表1模型的关联方法(taxCategory()):return $this->hasOne(TaxCategory::class, "id", "category_id")->field('tax_name');如果这样的话,返回值里的taxCategory就是null了。return $this->hasOne(TaxCategory::class, "id", "category_id")->field('id,tax_name');如果上面这样加上id字段,则可以成功返回值,但是跟一开始的问题一样,返回值taxCategory依然是个包含2个字段的对象。请有经验的大佬指点一下,Thanks♪(・ω・)ノ
    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    更多回答
    扫一扫访问手机版

    回答动态

    酒后略带风情:发布了悬赏问题Android内存中Graphics与Code占用过高预计能赚取 10积分收益
    扛起拖把扫天下:发布了悬赏问题typescript如何导出接口配置?求解,谢谢!预计能赚取 10积分收益
    发布了悬赏问题Vue 如何改变返回页面的路径?如让B页面只能返回到A页面.预计能赚取 11积分收益
    发布了悬赏问题vue H5移动端;底部bottom固定定位,安卓弹起键盘导致页面变形如何解决?预计能赚取 10积分收益
    发布了悬赏问题请问为什么tomcat8.5 GET请求中文正常,POST请求还需要设置UTF-8.预计能赚取 10积分收益
    发布了悬赏问题vue2.5+ts创建以及引入jq的方法预计能赚取 11积分收益
    情场浪女:发布了悬赏问题import ggplot时报错module 'pandas' has no attribute 'tslib'预计能赚取 10积分收益
    见心书画许老师18753375161:发布了悬赏问题echarts3 legend禁止点击事件,允许悬浮事件预计能赚取 11积分收益
    aa_92cb0bd09f:发布了悬赏问题codewar上的一个问题预计能赚取 11积分收益
    低谷有雾:发布了悬赏问题定时执行爬虫任务,通过循环监视,但是没有成功,求解答预计能赚取 11积分收益