播种数据透视表的更好方法

2024-04-20

我有以下表格users , roles和数据透视表角色_用户具有以下表结构

users

  • id
  • username
  • password

roles

  • id
  • role

角色_用户

  • id
  • role_id
  • user_id

        <?php
             class PivotTableSeeder extends Seeder {
                 public function run()
                 {
                  // Seeds the roles table
                    DB::table('roles')->delete();
    
                    DB::table('role_user')->insert(array(
                    array('user_id' => 1, 'role_id' => 1),
                    array('user_id' => 2, 'role_id' => 2),
                    array('user_id' => 3, 'role_id' => 1),
                    array('user_id' => 3, 'role_id' => 3),
                    array('user_id' => 3, 'role_id' => 5)
                ));
                }
            }
    

数据透视表的种子使用DB select

有没有更好的方法来播种表,包括数据透视表?

我在想,也许当我为 users 表播种时,它也会为 role_user 表播种,而不是手动将数据插入到数据透视表中。

Example:

roles

  • id = 1
  • 角色 = 编码器
  • id = 2
  • 角色=技术
  • id = 3
  • 角色=销售

users

  • id = 1
  • 用户名 = 用户
  • 密码=通过
  • id = 2
  • 用户名 = 用户2
  • 密码=pass2

角色_用户

  • id = 1
  • 用户 ID = 1
  • 角色 ID = 1
  • id = 2
  • 用户 ID = 1
  • 角色 ID = 2
  • id = 3
  • 用户 ID = 2
  • 角色 ID = 3

Edit

我正在使用这个 Eloquent 为我的用户表播种。 无论如何,在为用户播种时,role_user 也会更新吗?

User::create(array(
    'id' => '1',
    'username' => 'user',
    'password' => 'pass'
));
User::create(array(
    'id' => '2',
    'username' => 'user2',
    'password' => 'pass2'
));

您可以尝试以下操作(假设您已经拥有种子角色):

$user = User::create(['id' => '1', 'username' => 'user', 'password' => 'pass']);
$user->roles()->sync([1,2]); // array of role ids

$user = User::create(['id' => '2', 'username' => 'user2', 'password' => 'pass2']);
$user->roles()->sync([3,4]); // array of role ids

我用过[]代替array(), 如果你的PHP是先于ver-5.4那么你应该使用array().

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

播种数据透视表的更好方法 的相关文章

随机推荐

  • 在 Perl 中如何计算给定正态分布的点的概率?

    Perl 中是否有一个包可以让您计算每个给定点的概率分布高度 例如 这可以在 R 中以这种方式完成 gt dnorm 0 mean 4 sd 10 gt 0 03682701 即x 0点服从正态分布 mean 4 sd 10的概率为0 03
  • Twitter Bootstrap:Affix 在单页应用程序中未触发

    我正在做一个单页应用程序并使用 Twitter Bootstrap 我尝试像这样使用 Affix div 当我刷新页面时 一切正常 引导程序词缀添加了一个类 如下所示 div class affix top 当我超过 100px 后 它会将
  • 使用欧几里德算法计算数组值的最小公倍数

    我想使用欧几里德算法计算值数组的最小公倍数 我正在使用这个伪代码实现 发现于维基百科 https en wikipedia org wiki Euclidean algorithm function gcd a b while b 0 t
  • FTP 二进制 x ASCII 自动选择

    我编写了一个 FTP 插件 使用 python 的 ftplib 我想知道确定给定文件是否应该使用二进制或 ASCII 传输方法的最佳方法是什么 换句话说 自动 传输模式 当我收到有关双线的问题报告时 我开始研究这个问题 并且谷歌搜索发现二
  • 让回调在 JavaScript 中同步工作

    我正在使用一个名为DSBridge https github com wendux DSBridge IOS将移动应用程序 在本例中为 iOS 代码 连接到包含我的应用程序主要逻辑的 javascript 代码 这涉及在不可见的 WKWeb
  • Apache 服务器(xampp)在使用 openssl 函数时崩溃

    我正在尝试使用 php ini 生成私钥 公钥对 服务器 Apache 2 4 3 Win32 OpenSSL 1 0 1c PHP 5 4 7 操作系统是 Windows XP SP3 安装了所有 Windows 更新 我正在尝试执行以下
  • 如何使用 C# 访问 SQLite?

    我正在尝试使用 C ASP NET 以编程方式连接到我的 Sqlite 数据库 string requete sql SELECT FROM USERS connStr Data Source C LocalFolder FooBar db
  • 马根托。将块插入另一个块而不更改模板代码

    我尝试寻找解决方案但没有结果 我的任务是编写模块 它应该将一些 html 插入现有块中 我注意到 当我使用布局 xml 文件时 我可以将我的块插入到一些参考中 例如
  • 无法让简单的 ParseKit 示例正常工作

    我刚刚发现 ParseKit 但似乎无法让它在一个简单的例子中工作 NSString test FOO BAR NSString grammar get grammar txt file and read it into a string
  • AngularJS - 外部模板

    我正在为 和 的每个内容制作一个模板 因为我有很多数据要显示 但都在相同的结构中 这里是index html div 这是 script js function Ctrl scope scope methods name method1 d
  • Windows 11 权限被拒绝(公钥)

    最近升级到 Windows 11 后 我无法通过 SSH 访问服务器 我不断收到permission denied publickey error 我尝试过重新生成新的公钥ed25519而不是已弃用的rsa我仍然遇到同样的错误 我已经看到了
  • 2D 弹跳公式无法正常工作

    我是 Unity 的新手 我正在尝试创建一个弹跳球 所以我做了很多关于弹跳相关物理的研究 我找到了一个公式 Formula 2 V dot N N V 其中 V 是速度矢量 N 是球弹跳表面的法线 这是我的脚本 using UnityEng
  • 主干表视图消耗行视图 - 如何构造?

    我有一组模型希望在表格视图中呈现 每个模型应由表中的一行表示 并且该行应使用模板生成 我应该能够将事件处理程序附加到该行 例如单击 在事件发生时发出有关与该行关联的模型的一些特定信息 我见过类似的事情的一种常见方法是将每一行分解到它自己的视
  • Java keytool / 使用 java 生成密钥的安全性(一般)

    我们使用与 java 安装捆绑在一起的 keytool 来生成密钥以进行非对称 RSA 加密 鉴于近期events https www schneier com blog archives 2013 09 the nsa is brea h
  • 如何为 Windows Phone 7 应用程序的 UI 编写自动化测试?

    驱动一个普通的应用程序 它的 UI 已经足够困难了 但是当应用程序没有在您的开发平台上运行时 这就更难了 那么哪些工具可以帮助我测试 Windows Phone 7 应用程序的 UI 也可以看看 对于 Windows 7 Phone 代码的
  • IntelliJ IDEA:为什么 readLine() 需要两个用户输入,而不是使用 Kotlin 的一个?

    我编写了一个简单的程序 它从控制台获取用户的输入 然后将其打印出来 但是当用户输入时 它会请求第二个用户输入 并且只读取第二个输入 Code fun main args Array
  • 如何在 Mathematica 8 中并行集成

    有人知道如何使用所有核心来计算积分吗 我需要使用并行化或并行表 但如何使用 f r Sum 1 n 2 r 2 n 7 2 n n r 2 n 1 x r 2 n 1 n 0 r 2 Nw Transpose Table f j i 1 j
  • Clojure:在特定命名空间中启动 repl

    我安装了 boot clj 并且希望能够在外部编辑器中编辑 clj 文件 并单独运行一个命令行 REPL 我可以从中调用我在 clj 文件中更改的函数 不需要特殊的重新加载命令 另一件事是我不想手动键入命令来包含命名空间 我只想运行一个将我
  • 无需打开/保存即可评估 Excel 文件

    有没有一种方法可以在不手动打开文件的情况下计算Excel公式 如果 openxlsx 不是最佳选择 请随时推荐其他软件包 谢谢 我的目标是将数据粘贴到 Excel 文件 已经存在 中 其中的公式引用我要粘贴数据的范围 并让 Excel 刷新
  • 播种数据透视表的更好方法

    我有以下表格users roles和数据透视表角色 用户具有以下表结构 users id username password roles id role 角色 用户 id role id user id