问题标签 [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.
php - 未找到 laravel 工厂模型
我正在尝试创建一个新项目,其中包含有关 laravel 的更多信息,现在我正在使用工厂创建模型、迁移和种子,但我遇到了这个问题:
模型用户
模型帐户状态
种子文件:
工厂文件:
尝试与工匠进行分贝种子时:
已经在尝试 composer dump-autoload ,优化,我将模型放在 App\Models 的文件夹中。
带有工厂帐户状态的种子可以工作,但是当我尝试同时为两者运行时(帐户状态然后是用户)我有那个错误)有人知道为什么吗?将所有工厂代码放在一个文件中是一种好习惯吗?
php - 只有在 Laravel 播种中使用时,mcrypt_decrypt 才返回正确的数据
我们在 Windows 上的 PHP 7.0 下使用 Laravel 5.3 中内置的数据库播种。问题是每当我们使用 mcrypt_encrypt 对一些数据进行加密时,我们从 mcrypt_decrypt 得到的数据和我们传入的数据是不一样的。
在这种情况下,$data 是一些二进制字符串,而不是原始字符串。
- 这只发生在播种期间。mcrypt_encrypt/mcrypt_decrypt 将通过网络请求或修补程序工作。
- 我们知道它已被弃用。我们必须使用 mcrypt_encrypt 而不是最近的加密(https://laravel.com/docs/5.3/encryption),因为我们已经使用 mcrypt_encrypt 加密了遗留数据。
- $key 是从加密密钥加载的静态变量
- 这不是指示问题的错误或警告
有人知道这里会发生什么吗?
mysql - 带有 .sql 文件的 Laravel 播种机
我想在我的表中插入 30K 记录。我有同一张表的 .sql 文件,并且想使用 laravel 播种机。
它只插入 338 行。插入 338 后会发生什么?我该如何解决这个问题?
laravel - Laravel 5.3 通知播种器
我想要实现的目标是为 Laravel Notifications 创建一个数据库播种器。至于我使用数据库来存储我的通知,应该有一种方法来实现它。我正在创建工厂模型:
实际上它在数据库中创建了一个通知,但是工匠返回错误
有人知道该怎么做吗?
php - Laravel 中的数据库播种是什么?
我使用 Laravel 框架,最近我被告知有一些命名的东西database seeding
会为我们的测试生成一个假数据集。我的理解正确吗?
嗯,这很奇怪。这个怎么运作?它如何知道我在数据库的 X 列中需要哪种类型的数据?以及它是如何产生的?
另外,我不能为我的真实数据集制作种子(类似于导出)吗?你知道,我英语不太好,所以我无法理解数据库领域种子的概念。
php - 流明数据库播种错误
我正在学习使用 Laravel 的 Lumen 框架进行后端开发,并且正在按照Laravel 的文档编写数据库种子类。以下是代码:
模型app\Photo.php
模型厂database\factories\ModelFactory.php
DatabaseSeeder
和PhotoTableSeeder
班级database\seeds\DatabaseSeeder.php
以前 MySQL 数据库中的表名是photos
,并且播种使用以下命令可以完美地工作php artisan db:seed
:
播种:PhotoTableSeeder
但是当我将表名更改为photo
并运行相同的命令时,出现了这些错误:
[Illuminate\Database\QueryException] SQLSTATE[42S02]:未找到基表或视图:1146 表“homestead.photos”不存在(SQL:插入“照片”(“链接”、“类别 ID”、“日期” ) 值 ( https://placehold.it/259 , 3, 2012-05-28))
[PDOException] SQLSTATE [42S02]:未找到基表或视图:1146 表 'homestead.photos' 不存在
我不知道为什么仍然调用旧表名。我猜它被保存在某个地方或者我错过了什么,我无法找出错误的原因。
laravel - 如何从 PHPUnit 测试设置运行 Laravel 数据库播种机?
我正在尝试在某些 PHPUnit 测试用例中的每次测试之前重新创建数据库。我正在使用 Laravel 5.3。这是测试用例:
运行phpunit
失败并出现错误:
$ phpunit PHPUnit 5.7.5 由 Sebastian Bergmann 和贡献者提供。
E 1 / 1 (100%)
时间:2.19 秒,内存:12.00MB
有 1 个错误:
1) CourseTypesTest::test_list_course_types ReflectionException: 类 TestDatabaseSeeder 不存在
D:\www\learn-laravel\my-folder-api\vendor\laravel\framework\src\Illuminate\Container\Container.php:749 D:\www\learn-laravel\my-folder-api\vendor\laravel \framework\src\Illuminate\Container\Container.php:644 D:\www\learn-laravel\my-folder-api\vendor\laravel\framework\src\Illuminate\Foundation\Application.php:709 D:\www \learn-laravel\my-folder-api\vendor\laravel\framework\src\Illuminate\Database\Console\Seeds\SeedCommand.php:74 D:\www\learn-laravel\my-folder-api\vendor\laravel \framework\src\Illuminate\Database\Console\Seeds\SeedCommand.php:63 D:\www\learn-laravel\my-folder-api\vendor\laravel\framework\src\Illuminate\Database\Eloquent\Model.php :2292 D:\www\learn-laravel\my-folder-api\vendor\laravel\framework\src\Illuminate\Database\Console\Seeds\SeedCommand.php:64 D:\www\learn-laravel\my-folder-api\vendor\laravel\framework\src\Illuminate\Container\Container.php:508 D:\www\learn-laravel\my-folder-api\vendor\laravel\framework \src\Illuminate\Console\Command.php:169 D:\www\learn-laravel\my-folder-api\vendor\symfony\console\Command\Command.php:254 D:\www\learn-laravel\my -folder-api\vendor\laravel\framework\src\Illuminate\Console\Command.php:155 D:\www\learn-laravel\my-folder-api\vendor\symfony\console\Application.php:821 D: \www\learn-laravel\my-folder-api\vendor\symfony\console\Application.php:187 D:\www\learn-laravel\my-folder-api\vendor\symfony\console\Application.php:118 D:\www\learn-laravel\my-folder-api\vendor\laravel\framework\src\Illuminate\Console\Application.php:107 D:\www\learn-laravel\my-folder-api\vendor\laravel \framework\src\Illuminate\Foundation\Console\Kernel.php:218 D:\www\learn-laravel\my-folder-api\vendor\laravel\framework\src\Illuminate\Support\Facades\Facade.php:237 D:\www\learn-laravel\my-folder-api\tests\rest \CourseTypesTest.php:17
错误!测试:1,断言:0,错误:1。
laravel - 使用外键字段 Laravel 5.3 创建 Seeder
我正在尝试为我的表地址创建一个播种器,但我的表的一个字段是一个外键,这个 Fk 引用了我的表用户的用户 ID。
我的播种机类:
当我运行 db:seed 时,我收到错误消息:
[ErrorException] 传递给 Faker\Provider\Base::randomElements() 的参数 1 必须是数组类型,给定对象,在 C:\xampp\htdocs\projeto\vendor\fzaninotto\fake r\src\Faker\Provider 中调用\Base.php 在第 205 行并定义
php - 如何为 laravel 测试播种数据库迁移?
Laravel 的文档建议使用DatabaseMigrations
trait 在测试之间迁移和回滚数据库。
但是,我有一些种子数据想用于我的测试。如果我运行:
然后它适用于第一个测试,但它无法通过后续测试。这是因为 trait 会回滚迁移,并且当它再次运行迁移时,它不会为数据库做种。如何通过迁移运行数据库种子?