• laravel 模型关联 一对多


    昨天记了笔记,一对一关联,今天做了修改

    一篇文章对应多个评论   一个评论对应一个用户信息

    现在通过 url 传递过来文章的 id ,查询到文章传递给视图显示

    评论和用户信息,通过关联来获取

    我的评论表 comment 有 user_id  post_id  content

    用户信息表有 user_id 

    关联如下:Comment中  return $this->hasOne(' AppUserinfo ' , ' user_id ' , ' user_id ' );

    Userinfo中  return $this->belongsTo(' AppComment ');

    在这里说明一下,comment中关联的参数,评论表关联用户信息表,第一个参数为用户信息模型,第二个参数为用户信息表的外键,默认为评论表名加上_id 如 comment_id 用户信息表中没有这个外键会找不到,我的用户信息表没有这个评论的外键,我去指定这个发起评论的用户id的外键为 user_id ,第三个参数为评论表中与用户信息表对应的键,默认为评论表的id,在这里我设置为评论表中的 user_id 字段。

    我用评论模型去预加载用户信息的时候,它会通过第三个参数,与第二个参数对比,如果一致,则取出参数。

    通常我们在做关联的时候,会在被关联的表里面做外键(关联表的名字+id)来进行关联,这样就不用去设置第二第三参数,但是有时候在没有设置外键,或者关联表的id与被关联表的外键,不是我们进行关联的字段,第二第三参数就比较有用了。

  • 相关阅读:
    SQL 查询优化
    win10鼠标右键菜单在左边,怎么改回右边
    Ansible 命令
    CSV模块
    Python 常用模块
    Ansible 常用模块
    Ansible 动态配置文件
    Cluster Health
    Elasticsearch Python API
    grok常用表达式
  • 原文地址:https://www.cnblogs.com/muwu/p/9019029.html
Copyright © 2020-2023  润新知