비교 기준을 사용하여 findBy 메서드를 사용하는 방법

(정확한 기준뿐만 아니라) 비교 기준을 사용하여 “매직 파인더” findBy 방법을 사용해야 합니다.즉, 다음과 같은 작업을 수행해야 합니다. $result = $purchases_repository->findBy(array(“prize” => “>200”)); 200점 이상 구매하실 수 있도록요. 질문에 대한 답변 클래스는 API를 구현합니다. 그Selectable인터페이스는 매우 유연하고 매우 새로운 것이지만, ORM 또는 ODM 또는 완전히 다른 문제에 관계없이 저장소 및 단일 항목 컬렉션 모두에서 비교 및 … Read more

2개의 php 독트린 2 Array Collection()을 Marge하는 방법

두 가지 원칙을 연결할 수 있는 편리한 방법이 있나요?ArrayCollection()예를 들어 다음과 같습니다. $collection1 = new ArrayCollection(); $collection2 = new ArrayCollection(); $collection1->add($obj1); $collection1->add($obj2); $collection1->add($obj3); $collection2->add($obj4); $collection2->add($obj5); $collection2->add($obj6); $collection1->concat($collection2); // $collection1 now contains {$obj1, $obj2, $obj3, $obj4, $obj5, $obj6 } 두 번째 컬렉션에서 각 요소를 하나씩 추가하여 반복하는 것을 방지할 수 있는지 알고 싶습니다. 감사합니다! 질문에 대한 … Read more

원칙 2 엔티티에서 변경/업데이트된 모든 필드를 가져올 수 있는 기본 제공 방법이 있습니까?

엔티티를 취득했다고 칩시다.$e설정기를 사용하여 상태를 수정합니다. $e->setFoo(‘a’); $e->setBar(‘b’); 변경된 필드 배열을 가져올 수 있습니까? 이 예제의 경우 검색하려고 합니다.foo => a, bar => b결과적으로. PS: 네, 모든 액세스 장치를 변경하여 이 기능을 수동으로 구현할 수 있지만, 이 기능을 쉽게 구현할 수 있는 방법을 찾고 있습니다. 질문에 대한 답변 사용할 수 있습니다.DoctrineORMEntityManager#getUnitOfWork을 얻다DoctrineORMUnitOfWork. 다음으로 변경 세트 … Read more

원칙 2 및 추가 필드가 있는 다대다 링크 테이블

(당연하지 않은 질문 죄송합니다.이 투고를 쓰면서 몇 가지 질문에 답하려고 했습니다만, 여기 있습니다. 링크 테이블 내에 다대다 관계가 있는 데이터베이스 모델을 작성하려고 합니다만, 링크당 값(이 경우 재고 관리 테이블)도 있습니다.(이것은, 다른 문제에 대한 기본적인 예입니다만, 속행하기 전에 이것만으로 테스트해 보겠습니다). exportmwb를 사용하여 이 간단한 예제를 위해 두 개의 엔티티 스토어와 제품을 생성했습니다.둘 다 아래에 표시되어 … Read more

속성 유형 힌트를 소개할 때 갑자기 “초기화 전에 Typed properties must accessed before initialization” 오류가 나타나는 이유는 무엇입니까?

새로 도입된 속성 유형 힌트를 활용하기 위해 클래스 정의를 다음과 같이 업데이트했습니다. class Foo { private int $id; private ?string $val; private DateTimeInterface $createdAt; private ?DateTimeInterface $updatedAt; public function __construct(int $id) { $this->id = $id; } public function getId(): int { return $this->id; } public function getVal(): ?string { return $this->val; } public function getCreatedAt(): … Read more

symfony2 원칙2에 var_dump가 있는 데이터가 너무 많습니다.

저는 40개 정도의 실체가 있고 많은 쌍방향 관계를 가지고 있습니다.var_dump($user) 또는 엔티티를 사용하면 브라우저가 어레이 및 변수의 데이터를 너무 많이 로드하여 크래시됩니다. 나는 무엇이 문제인지 알고 싶다. 데이터는 정상적으로 삽입되고 있습니다.생산에서 문제를 일으켜도 될까요? 질문에 대한 답변 var_dump()를 Acrin Common에서 제공하는 debug 메서드 dump()로 바꿉니다. DoctrineCommonUtilDebug::dump($user); 이 기능은 단일 개체 및 원칙 컬렉션에 대해 작동하며 … Read more

파일 시스템에서 클래스를 이동한 후 “클래스 XXX가 유효한 엔티티 또는 매핑된 슈퍼 클래스가 아닙니다”

AibPlatformBundle에서 엔티티 클래스를 받았습니다.엔티티사용자php 폼클래스를 만드는 데 문제가 없었습니다. php app/console 원칙: 생성: 양식 AibPlatformBundle:사용자 네임스페이스를 AibPlatformBundle로 변경했습니다.엔티티아이덴티티사용자, 하지만 이전에 말한 작업으로 폼을 생성하려고 하면 다음과 같이 표시됩니다. “클래스 AibPlatform Bundle”엔티티User는 유효한 엔티티 또는 매핑된 슈퍼 클래스가 아닙니다.” 파일 내용은 다음과 같습니다. <?php namespace AibPlatformBundleEntityIdentity; use DoctrineORMMapping as ORM; /** * AibPlatformBundleEntityIdentityUser * * @ORMTable() … Read more

inversedBy와 mappedBy의 차이점은 무엇입니까?

Zend Framework 2와 독트린 2를 사용하여 어플리케이션을 개발하고 있습니다. 주석을 쓰는 동안, 나는 그 차이를 이해할 수 없다.mappedBy그리고.inversedBy. 언제 사용하면 좋을까요?mappedBy? 언제 사용하면 좋을까요?inversedBy? 언제 둘 다 쓰면 안 돼요? 다음은 예를 제시하겠습니다. /** * * @ORMOneToOne(targetEntity=”custModEntityPerson”, mappedBy=”customer”) * @ORMJoinColumn(name=”personID”, referencedColumnName=”id”) */ protected $person; /** * * @ORMOneToOne(targetEntity=”AuthEntityUser”) * @ORMJoinColumn(name=”userID”, referencedColumnName=”id”) */ protected $user; /** … Read more

원칙 및 복합 고유 키

나는 교리 안에서 복합 고유 키를 하고 싶다.이것들은 나의 분야입니다. /** * @var string $videoDimension * * @Column(name=”video_dimension”, type=”string”, nullable=false) */ private $videoDimension; /** * @var string $videoBitrate * * @Column(name=”video_bitrate”, type=”string”, nullable=false) */ private $videoBitrate; 어떻게 하면 교리를 보여줄 수 있을까요?이것들은 복합적인 독특한 열쇠입니다 질문에 대한 답변 질문에 답합니다. use DoctrineORMMappingUniqueConstraint; /** * CommonModelEntityVideoSettings … Read more

1차원 스칼라 어레이를 교리 dql 쿼리 결과로 가져오려면 어떻게 해야 합니까?

옥션 테이블의 id 컬럼에서 값 배열을 얻고 싶습니다.이것이 미가공 SQL일 경우 다음과 같이 기술합니다. SELECT id FROM auction 하지만 내가 독트린에서 이것을 실행하고 실행할 때: $em->createQuery(“SELECT a.id FROM Auction a”)->getScalarResult(); 다음과 같은 어레이가 있습니다. array( array(‘id’ => 1), array(‘id’ => 2), ) 대신 다음과 같은 어레이를 원합니다. array( 1, 2 ) 어떻게 독트린을 사용할 수 … Read more

원칙 2에서 WHERE IN을 사용하는 방법

에러를 나타내는 코드는 다음과 같습니다. Message: Invalid parameter number: number of bound variables does not match number of tokens 코드: public function getCount($ids, $outcome) { if (!is_array($ids)) { $ids = array($ids); } $qb = $this->getEntityManager()->createQueryBuilder(); $qb->add(‘select’, $qb->expr()->count(‘r.id’)) ->add(‘from’, ‘MyEntityRating r’); if ($outcome === ‘wins’) { $qb->add(‘where’, $qb->expr()->in(‘r.winner’, array(‘?1’))); } if ($outcome === ‘fails’) { $qb->add(‘where’, … Read more

원칙에서 findBy()를 사용하여 결과를 정렬하는 방법

사용하고 있는 것은findBy()메서드를 지정합니다. $entities = $repository->findBy(array(‘type’=> ‘C12’)); 결과를 주문하려면 어떻게 해야 하나요? 질문에 대한 답변 의 두 번째 파라미터findBy주문용입니다. $ens = $em->getRepository(‘AcmeBinBundle:Marks’) ->findBy( array(‘type’=> ‘C12’), array(‘id’ => ‘ASC’) ); $ens = $em->getRepository(‘AcmeBinBundle:Marks’) ->findBy( array(), array(‘id’ => ‘ASC’) ); $cRepo = $em->getRepository(‘KaleLocationBundle:Country’); // Leave the first array blank $countries = $cRepo->findBy(array(), array(‘name’=>’asc’));