DataFixtures Symfony 3.3 SQLSTATE [23000] - PullRequest
       31

DataFixtures Symfony 3.3 SQLSTATE [23000]

0 голосов
/ 11 сентября 2018

Привет, Я хочу генерировать контент из Datafixtures в Symfony 3.3

Если я использую метод Load из CSV-файла, у меня появляется ошибка SQLSTATE [23000], если я использую строковые данные в методе, он работает хорошо, но один за другим ... это их не интересует

<?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();
    }



}

Мое исключение:

 [Doctrine\DBAL\Exception\NotNullConstraintViolationException]             
  An exception occurred while executing 'INSERT INTO password (slug, share  
  d, date, nb_applications, title, url, login, password, content, updated_  
  at, user_id) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)' with params ["-5"  
  , 1, "2018-09-11 16:46:04", 0, null, null, null, null, "my str", null, n  
  ull]:                                                                     
  SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'title' can  
  not be null  

Вы можете мне помочь?

Столбец 'title' не может быть нулевым. Но когда я вывожу файл frym с содержимым, он отображает содержимое

1 Ответ

0 голосов
/ 11 сентября 2018

Сообщение:

Column 'title' can not be null 

$existantPass[$i]->setTitle($line[0]?? 'some-value');
...