嗨, 我想从Symfony 3.3中的Datafixtures生成内容
如果我使用csv文件中的Load方法,则出现SQLSTATE [23000]错误,如果我在方法中使用字符串数据,则效果很好,但一一...对它们没有兴趣
a_cols = ['animal', 'name']
f_cols = ['food', 'name']
a_pd[a_cols].merge(f_pd[f_cols], on='name', how='left')
我的例外:
<?php
namespace PasswordManager\Bundle\PlatformBundle\DataFixtures\ORM;
use Doctrine\Common\DataFixtures\FixtureInterface;
use Doctrine\Common\Persistence\ObjectManager;
use PasswordManager\Bundle\PlatformBundle\Entity\Password as Password;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use PasswordManager\Bundle\PlatformBundle\Controller\PasswordController;
class LoadPassword extends PasswordController implements FixtureInterface
{
public function load(ObjectManager $manager){
$csv = fopen(dirname(__FILE__).'/loadexistPass/file.csv', 'r');
$i = 0;
while (!feof($csv)) {
$line = fgetcsv($csv);
$existantPass[$i] = new Password();
$existantPass[$i]->setSlug($line[0]);
$existantPass[$i]->setShared(1);
$existantPass[$i]->setTitle($line[0]);
$existantPass[$i]->setUrl($line[0]);
$existantPass[$i]->setLogin($line[1]);
$existantPass[$i]->setPassword($line[2]);
$existantPass[$i]->setContent('my str');
$manager->persist($existantPass[$i]);
$i = $i ++;
}
fclose($csv);
$manager->flush();
}
}
你能帮我吗?
列“ title”不能为空,但是当我转储内容frym文件时,它将显示内容
答案 0 :(得分:0)
消息:
Column 'title' can not be null
$existantPass[$i]->setTitle($line[0]?? 'some-value');