에 User
하나가 Package
연결되어 있습니다. 많은 사용자가 동일한 패키지를 참조 할 수 있습니다. 정의 User
없이는 존재할 수 없습니다 Package
. User
관계를 소유해야합니다. 관계는 양방향이므로 a Package
에는 0 명 이상의 사용자가 있습니다.
이러한 요구 사항은 이어질 ManyToOne
에 대한 관계 User
와 OneToMany
의 관계 Package
교리 2에 단 package_id
에서 user
테이블 (즉, 외래 키입니다) 허용 null
값을. 설정을 시도 nullable=false
했지만 명령 :
php app/console doctrine:generate:entities DL --path="src" --no-backup
nullable
관계에 대한 속성이 없음을 나타 냅니다 ManyToOne
. 내가 뭘 놓치고 있니?
class User
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @ORM\ManyToOne(targetEntity="Package", inversedBy="users")
*/
private $package;
}
class Package
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @ORM\OneToMany(targetEntity="User", mappedBy="package")
*/
private $users;
}
편집 : 해결되었습니다. 참고하시기 바랍니다 이 잘못된 것 (큰 따옴표에 유의) :
@ORM\JoinColumn(name="package_id", referencedColumnName="id", nullable="false")
이것이 맞지만 :
@ORM\JoinColumn(name="package_id", referencedColumnName="id", nullable=false)
package_id
은 여전히 Null-예, 기본값-NULL로 플래그가 지정됩니다. 어떤 도움이라도 대단히 감사합니다.