• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    图文详解laravel多对多关联模型

    关联模型(多对多)

    多对多关系(抽象)

    例:一篇文章可能有多个关键词,一个关键词可能被多个文章使用。 关键词表:

    字段id 主键
    字段keyword 关键词
    文章与关键词的关系表:
    字段id 主键
    -- --
    字段article_id 文章id
    字段key_id 关键词id
    创建迁移文件:
    php artisan make:migration create_keyword_table
    php artisan make:migration create_relation_table
    编写迁移文件的代码:
    执行迁移php artisan migrate
    创建填充器:
    php artisan make:seeder KeywordAndRelationTableSeeder
    编写填充器数据:
    ?php
     
    namespace Database\Seeders;
     
    use Illuminate\Database\Seeder;
    use DB;
     
    class KeywordAndRelationTableSeeder extends Seeder
    {
        /**
         * Run the database seeds.
         *
         * @return void
         */
        public function run()
        {
            //关键词数据
            DB::table('keyword') -> insert([
                ['keyword' => '搞笑'],
                ['keyword' => '文艺'],
                ['keyword' => '正片'],
                ['keyword' => '惊悚'],
                ['keyword' => '娱乐'],
                ['keyword' => '武术'],
            ]);
     
            //关系表
            DB::table('relation') -> insert([
                [
                    'article_id' => rand(1,3),
                    'keyword_id' => rand(1,6)
                ],
                [
                    'article_id' => rand(1,3),
                    'keyword_id' => rand(1,6)
                ],
                [
                    'article_id' => rand(1,3),
                    'keyword_id' => rand(1,6)
                ],
                [
                    'article_id' => rand(1,3),
                    'keyword_id' => rand(1,6)
                ],
            ]);
        }
    }
     

    执行填充器: php artisan db:seed --class=KeywordAndRelationTableSeeder

     

     

    案例:查询出每个文章(主)下全部的关键词(从) 语法:

    return $this -> belongsToMany(被关联模型的元素空间路径, 多对多模型的关系表名, 关系表中当前模型中的关系键,关系表中被关联模型的关系键)

    上述语法提及到的关系键是指在关系表中的字段名。 创建关键词模型: php artisan make:model Keyword

    ​​​​​​​

     

     

    创建案例路由:

    创建案例控制方法:

    效果:

    总结

    到此这篇关于laravel多对多关联模型的文章就介绍到这了,更多相关laravel多对多关联模型内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

    您可能感兴趣的文章:
    • PHP laravel中的多对多关系实例详解
    • Laravel 关联模型-关联新增和关联更新的方法
    • Laravel关联模型中过滤结果为空的结果集(has和with区别)
    • laravel学习教程之关联模型
    上一篇:HTTP中header头部信息详解
    下一篇:laravel多视图共享数据实例代码
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    图文详解laravel多对多关联模型 图文,详解,laravel,多对,多,