قمت بإعداد مشروع جديد مع symfony والعقيدة. قمت بإنشاء قاعدة بيانات باستخدام الأمر التالي:
php bin/console doctrine:database:create
ثم قمت بإنشاء كيان باستخدام الأمر التالي:
php bin/console make:entity
كان هذا هو الرمز الذي تم إنشاؤه:
<?php
namespace App\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity(repositoryClass="App\Repository\UserRepository")
*/
class User
{
/**
* @ORM\Id()
* @ORM\GeneratedValue()
* @ORM\Column(type="integer")
*/
private $id;
/**
* @ORM\Column(type="string", length=255)
*/
private $name;
/**
* @ORM\Column(type="string", length=255)
*/
private $email;
/**
* @ORM\Column(type="string", length=24, nullable=true)
*/
private $phone;
/**
* @ORM\Column(type="integer")
*/
private $zip_code;
public function getId()
{
return $this->id;
}
public function getName(): ?string
{
return $this->name;
}
public function setName(string $name): self
{
$this->name = $name;
return $this;
}
public function getEmail(): ?string
{
return $this->email;
}
public function setEmail(string $email): self
{
$this->email = $email;
return $this;
}
public function getPhone(): ?string
{
return $this->phone;
}
public function setPhone(?string $phone): self
{
$this->phone = $phone;
return $this;
}
public function getZipCode(): ?int
{
return $this->zip_code;
}
public function setZipCode(int $zip_code): self
{
$this->zip_code = $zip_code;
return $this;
}
}
عندما أحاول تشغيل الترحيل ، أستمر في تلقي الخطأ التالي:
php bin/console make:migration
و
php bin/console doctrine:migrations:migrate
خطأ:
SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes
هذا أمر محبط للغاية لأنني أستخدم سطر الأوامر لإنشاء رمز ومشروع جديد تمامًا وقد حاولت استكشاف هذا الأمر لبعض الوقت.
أنا أقدر أي اقتراحات حول كيفية حلها.