ErrorException Array to string conversion当我运行播种器时出现错误。
php artisan db:seed --class=StudentSeeder
在我对 进行更改之前它工作得很好StudentFactory.php,我只是更改了所有的伪造者,而且我不知道是哪个伪造者造成了这个麻烦。
<?php\n\nnamespace Database\\Factories;\n\nuse Illuminate\\Database\\Eloquent\\Factories\\Factory;\nuse Illuminate\\Support\\Str;\nuse App\\Models\\Student;\n\nclass StudentFactory extends Factory\n{\n /**\n * The name of the factory's corresponding model.\n *\n * @var string\n */\n protected $model = Student::class;\n\n /**\n * Define the model's default state.\n *\n * @return array\n */\n public function definition()\n {\n return [\n 'student_name' => $this->faker->name('male'),\n 'cpr' => $this->faker->creditCardNumber,\n 'email' => $this->faker->safeEmail,\n 'mobile' => $this->faker->e164PhoneNumber,\n 'mobile2' => $this->faker->e164PhoneNumber,\n 'dob' => $this->faker->date(),\n 'address' …Run Code Online (Sandbox Code Playgroud) 我是 Node.js 新手。我想创建mysql连接并将数据插入数据库并稍后访问它。我安装了node.js,然后使用npm安装了“mysql”和“faker”。使用node.js我成功连接到mysql,创建了数据库和表(代码在NODE-JS文件夹中的mysql1.js中)。
然后我继续创建假数据(fake_data.js 中的代码)以插入到表中。 vscode 的截图
var faker = require("faker");
让first_name = faker.name.firstName(); 让last_name = faker.name.lastName();
控制台.log( Employee: ${prefix} ${first_name} ${last_name} ${suffix});
但是这次我出错了
code: 'MODULE_NOT_FOUND',
path: 'D:\\DATABASES\\NODE-JS\\node_modules\\faker\\package.json',
requestPath: 'faker'
Run Code Online (Sandbox Code Playgroud)
package.json 文件包含以下依赖项
{
"dependencies": {
"faker": "^6.6.6",
"mysql": "^2.18.1"
},
"name": "node-js",
"version": "1.0.0",
"main": "app.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author": "",
"license": "ISC",
"description": ""
}
Run Code Online (Sandbox Code Playgroud)
我试过,
var faker = require("./faker");
Run Code Online (Sandbox Code Playgroud)
即使那样它也会抛出错误
请帮我解决这个问题。谢谢
下面是我的模型工厂。
$factory->define(App\Business::class, function (Faker\Generator $faker){
return [
'name' => $faker->bs,
'slug' => $faker->slug,
'address' => $faker->streetAddress,
'phone_no' => $faker->phoneNumber,
'mobile_no' => $faker->phoneNumber,
'email' => $faker->companyEmail,
'website' => $faker->domainName,
'latitude' => $faker->latitude,
'longitude' => $faker->longitude,
'location' => $faker->city,
'business_days_from' => $faker->dayOfWeek,
'business_days_to' => $faker->dayOfWeek,
'description' => $faker->text,
'user_id' => $faker->factory(App\User::class),
];
Run Code Online (Sandbox Code Playgroud)
});
这是我的数据库播种器类
class DatabaseSeeder extends Seeder
{
public function run()
{
factory(App\Business::class, 300)->create();
}
}
Run Code Online (Sandbox Code Playgroud)
但是当我执行php artisan db:seed ...它不起作用..
这里应该有什么解决方法..任何帮助将不胜感激..
理想情况下,我想根据 Faker 生成的电子邮件创建一封假电子邮件,但我想实现以下目标faker_first_name@mydomain.com:该文档显示您可以对第一部分执行此操作,但不能对实际域执行此操作。有办法实现这一点吗?
20.times do
u = User.new(first_name: Faker::Name.first_name,
last_name: Faker::Name.last_name,
email: Faker::Name.first_name"@THISPART.com",
)
u.save
end
Run Code Online (Sandbox Code Playgroud) 我们有一个旧的 ember 应用程序,bower.json配置如下:
{
"name": "my-app",
"dependencies": {
"Faker": "~3.1.0"
}
}
Run Code Online (Sandbox Code Playgroud)
它已经工作了很多年,最近我们在构建时发现以下错误
bower install
bower Faker#~3.1.0 not-cached https://github.com/Marak/Faker.js.git#~3.1.0
bower Faker#~3.1.0 resolve https://github.com/Marak/Faker.js.git#~3.1.0
bower Faker#~3.1.0 ENORESTARGET No tag found that was able to satisfy ~3.1.0
Additional error details:
No versions found in https://github.com/Marak/Faker.js.git
Run Code Online (Sandbox Code Playgroud)
我检查了https://github.com/Marak/Faker.js,错误是正确的。没有了3.1.0,当前版本是6.6.6. 但是 git 提交历史记录3.1.0再也找不到版本了。
有没有办法让我从某个地方找到 3.1.0?看来作者清理了旧版本?
我使用 Faker 模块来生成假的未来日期。我想要一个不久的将来的随机日期。
//Generate date
const dateOfTravel = faker.date.between('now', '2024/05/05').toLocaleDateString();
//Input date
cy.get("#date").type(`${dateOfTravel}`)
Run Code Online (Sandbox Code Playgroud)
页面字段需要日期的字符串格式为“YYYY/MM/DD”,但我得到“YYYY-DD-MM”
我如何将其隐藏到所需日期或者我需要不同的功能
我正在尝试使用同一个表的随机 id 为 parent_id 列设置种子,或者让它为空。
这我认为它会起作用:
...
'parent_id' => $faker->boolean() ? Page::all()->random()->id : null,
...
Run Code Online (Sandbox Code Playgroud)
但我收到以下错误:
You requested 1 items, but there are only 0 items available.
Run Code Online (Sandbox Code Playgroud)
有谁知道如何做到这一点?
更新1:
使用伪动漫答案我尝试了流动:
$factory->define(Page::class, function (Faker\Generator $faker) {
...
$parent_id = null;
...
$has_parent = $faker->boolean(50);
Log::debug('$has_parent' . $has_parent);
if ($has_parent) {
$parents = Page::all();
Log::debug('$parents' . count($parents));
if ($parents->isEmpty()) {
Log::debug('isEmpty');
$parent_id = null;
} else {
Log::debug('$parents->random()' . print_r($parents->random(), true));
$parent_id = $parents->random()->id;
}
}
return [
...
'parent_id' => $parent_id, …Run Code Online (Sandbox Code Playgroud) 我想在 Ruby on Rails 中使用 Faker 库创建种子数据。我在seed.rb 文件中包含了require 'faker',当我运行rails db:seed 命令时,出现加载错误。我想知道为什么会发生这种情况以及如何解决它。我的 Ruby 版本是 2.6.5,Ruby on Rails 版本是 6.0.2.1。
rails aborted!
LoadError: cannot load such file -- faker
/Users/apple/ride_sharing/db/seeds.rb:10:in `<main>'
/Users/apple/ride_sharing/bin/rails:9:in `<top (required)>'
/Users/apple/ride_sharing/bin/spring:15:in `<top (required)>'
bin/rails:3:in `load'
bin/rails:3:in `<main>'
Caused by:
Bootsnap::LoadPathCache::FallbackScan:
Tasks: TOP => db:seed
Run Code Online (Sandbox Code Playgroud)
这是运行 rails db:seed --trace 命令后的完整跟踪。
(base) apple@apples-MacBook-Pro-2 ride_sharing % rails db:seed --trace
** Invoke db:seed (first_time)
** Invoke db:load_config (first_time)
** Invoke environment (first_time)
** Execute environment
** Execute db:load_config
** Execute db:seed
** …Run Code Online (Sandbox Code Playgroud)