问题标签 [laravel-seeding]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
9 回答
34148 浏览

mysql - Laravel 5.1 迁移和播种无法截断外键约束中引用的表

我正在尝试运行迁移(见下文)并为数据库播种,但是当我运行时

我收到此错误:

我查了一下这个错误应该是什么意思,还发现了其他人遇到同样问题的例子,甚至只是与使用MySQL和他们的解决方案有关,但应用:

在 down() 内似乎不起作用,当我在 MySQL 中运行 describe 时,表看起来正确。

正确命名迁移以确保首先迁移用户表,然后迁移车辆,以便可以应用外键,并且正确设置的表表明迁移已运行,但随后发生错误。我删除并重新创建了数据库并再次尝试,结果相同。我也不明白为什么它试图在数据库的第一次迁移和种子时截断,我不会想到当你尝试运行 php artisan migrate:refresh --seed 时会发生这种情况。

0 投票
2 回答
831 浏览

laravel-5 - Laravel 数据库播种

我正在尝试了解laravel。我不忙于播种,我不断收到以下错误:

我做了什么:

用户类

CreateUserTable 迁移:

UserTableSeeder

数据库播种机

在数据库播种机中,我尝试了以下操作:

我知道它找不到课程,但我对找出原因一无所知?我搜索了谷歌并找到了其他人出错的其他地方,但我似乎没有同样的错误。希望这不是一个非常愚蠢的问题。

编辑*

如果我做 composer dump-autoload 我得到上述错误和以下异常跟踪:

在我手动将类添加到 composer.json 文件后,出现此错误。

现在,如果我尝试使用 php artisan db:seed 我得到另一个错误:

0 投票
2 回答
2251 浏览

php - php artisan db:seed 不工作 Laravel 5

我已阅读其他答案,但没有解决我的问题。当我运行php artisan db:seed时没有任何反应,甚至没有抛出错误。
这是我的 DatabaseSeeder 类

BearAppSeeder 包含以下内容。

我试过跑步composer dump-autoload,但这并没有解决我的问题。我是 Laravel 的新手,所以我不太了解它。

0 投票
1 回答
918 浏览

laravel-5.1 - Laravel 5.1:工厂/播种机数据透视表

我正在尝试为数据透视表创建 soem 播种机数据。下面的代码在某一点上会遇到重复错误。

有没有办法更好地做到这一点或改进此代码,以免造成重复。

有错误 Integrity constraint violation: 1062 Duplicate entry

但在极少数情况下它会过去,但我想确保它一直都在。

这是在我的播种机类中运行的

谢谢

0 投票
1 回答
90 浏览

laravel - 使用包时出现 ReflectionException

我在我的 laravel 5.1 应用程序中使用一个包进行角色和权限管理,并在尝试使用以下代码创建角色时出错。

我在 CLI 上使用以下命令播种它。

但不幸的是我得到了 ReflectionException

“[ReflectionException] 类 RoleTableSeeder 不存在”...

它可能有什么问题?正在寻求您的帮助...

包链接: https ://github.com/romanbican/roles

0 投票
1 回答
53 浏览

recursion - 在数据透视表的层次结构中查找和存储类别位置的地址

首先,我使用的是 Laravel 5.1(PHP 框架)并且我正在运行 PHP 5.6.4,而我面临的问题实际上与递归有关。

我目前的种子文件是(递归函数的借口很糟糕):

我想递归地遍历每个“类别”(大型多维数组)并制作一个“地址”,这是该类别在类别层次结构中的来源,这是因为在我的网站上,一个类别可以属于许多其他类别。

这个种子类如果为多对多关系Category 的数据透视表有。

在数据透视表中,我有:

  • category_id - 整数
  • parent_category_id - 整数
  • 地址 - 字符串

所以一个例子可以是(代码中的数组也是如此):

  • 6
  • 3
  • “2-3-6”

所以“2-3-6”是该类别 6 的特定实例的层次结构中的完整“地址”。

那么如何递归读取我的类别数组并在我的数据透视表中为每个字段输入上述三个字段?

0 投票
3 回答
4064 浏览

php - Laravel 5 播种

我正在学习“Laravel 5 Essentials”中的教程。当我尝试使用命令播种我的数据库时

php artisan db:seed

我收到错误

BreedsTableSeeder 的代码定义如下:

DatabaseSeeder 的定义如下:

1 当我在 Sublime 中加载示例代码时,我注意到“DB”具有不同的颜色,这让我怀疑这与 DB 命名空间有关。因为我是 Laravel 的新手,所以我不确定应该在哪里定义 DB。

我也尝试执行

但这没有用。有谁知道如何解决这个问题?谢谢!

0 投票
3 回答
40512 浏览

laravel - 如何将参数传递给 Laravel 工厂?

我有一个users表和与表的一对零/一关系businesses(users.user_id => business.user_id)。在我的users桌子上,我有一个鉴别器,它告诉我用户是否属于业务类型,因此我也需要在businesses桌子上提供详细信息。

我想用我目前正在工作的工厂创建我的用户,然后只创建鉴别器指向企业帐户的业务详细信息。

我心中有三个选择:

  1. 从用户工厂创建,然后使用 '->each()' 对鉴别器进行一些检查,并使用工厂创建一个新的业务用户。但是,我无法将user_id分配给用户的信息传递给业务工厂。
  2. 首先创建用户。然后在我的业务播种器中,检索与“业务”鉴别器匹配的所有用户。然后为所有这些用户运行一个创建业务详细信息的工厂。但同样,我必须以某种方式user_id将已经创建的用户与 business factory联系起来user_id
  3. 在我的业务工厂中,创建一个新用户并检索 id,从而建立 和 之间的users.user_id链接business.user_id。但是,我使用的是随机生成器,user.user_type因此即使我businesses填满了表格,它也可能适用于将鉴别器设为“个人”的用户。

还有其他方法吗?我可以将播种机中的参数传递给工厂吗?

0 投票
1 回答
719 浏览

php - Laravel 5:找不到类“Illuminate\Database\Seeder”

我目前面临的问题已经在这里发布了,但是没有一个可以解决我的问题。

我说的是位于 url 下的数据库播种器,例如http://HOSTNAME/laravelfiles/database/seeds/UsersTableSeeder.php. 其内容如下:

直接打开此文件(通过代码上面给出的 url),打印以下错误:

Fatal error: Class 'Illuminate\Database\Seeder' not found in /var/www/laravelfiles/database/seeds/UsersTableSeeder.php on line 6

我找到了可能的解决方案。对我不起作用:

  • composer dump-autoload

注意: 即使上面的代码也会产生相同的错误。

0 投票
1 回答
384 浏览

laravel-4 - Laravel 4数据库插入错误-preg_replace():参数不匹配,模式是字符串,而替换是数组

在数据库播种机中,我只想向表中插入一些硬编码数据。

但是,我得到了错误:

[ErrorException] preg_replace(): 参数不匹配,pattern 是字符串,replacement 是数组

这太奇怪了,因为我对另一张桌子做了同样的事情,它奏效了。

我真的不明白为什么插入项目表有效,但映射表之一不起作用。它们是完全相同的方法。