Symfony Doctrine Mapping - PullRequest
       9

Symfony Doctrine Mapping

0 голосов
/ 26 ноября 2018

У меня есть 2 сущности:

Расход и поставщик.

есть много точек расходов на одного поставщика.

Я получаю ошибку:

1062 - Дублирующая запись '4' для ключа 'UNIQ_2D3A8DA62ADD6D8C'

, потому что я пытаюсь добавить новый Расход для поставщика.

Но у меня есть ManyToOne на моемСущность.

Файл сущности расходов:

<?php

namespace App\Entity;

use Doctrine\ORM\Mapping as ORM;

/**
 * @ORM\Entity
 */
class Expense
{
/**
 * @ORM\Id()
 * @ORM\GeneratedValue()
 * @ORM\Column(type="integer")
 */
private $id;
/**
 * @ORM\ManyToOne(targetEntity="App\Entity\Supplier")
 * @ORM\JoinColumn(nullable=false)
 */
private $supplier;
/**
 * @ORM\Column(type="string", length=50)
 */
private $amount;
/**
 * @ORM\Column(type="string", length=50)
 */
private $invoice_id;
/**
 * @ORM\Column(type="date")
 */
private $date;

public function getId(): ?int
{
    return $this->id;
}

public function getAmount(): ?string
{
    return $this->amount;
}

public function setAmount(string $amount): self
{
    $this->amount = $amount;

    return $this;
}

public function getInvoiceId(): ?string
{
    return $this->invoice_id;
}

public function setInvoiceId(string $invoice_id): self
{
    $this->invoice_id = $invoice_id;

    return $this;
}

public function getDate(): ?\DateTimeInterface
{
    return $this->date;
}

public function setDate(\DateTimeInterface $date): self
{
    $this->date = $date;

    return $this;
}

public function getSupplier(): ?Supplier
{
    return $this->supplier;
}

public function setSupplier(?Supplier $supplier): self
{
    $this->supplier = $supplier;
    return $this;
}}

Файл сущности поставщика:

<?php

namespace App\Entity;

use Doctrine\ORM\Mapping as ORM;

/**
 * @ORM\Entity
 */
class Supplier
{
    /**
     * @ORM\Id()
     * @ORM\GeneratedValue()
     * @ORM\Column(type="integer")
     */
    private $id;
    /**
     * @ORM\Column(type="string", length=50)
     */
    private $name;
    /**
     * @ORM\Column(type="string", length=50)
     */
    private $tax_id;
    /**
     * @ORM\Column(type="integer", length=50)
     */
    private $category;

    public function __toString()
    {
        return (string)$this->name;
    }

    public function getId(): ?int
    {
        return $this->id;
    }

    public function getName(): ?string
    {
        return $this->name;
    }

    public function setName(string $name): self
    {
        $this->name = $name;

        return $this;
    }

    public function getTaxId(): ?string
    {
        return $this->tax_id;
    }

    public function setTaxId(string $tax_id): self
    {
        $this->tax_id = $tax_id;

        return $this;
    }

    public function getCategory(): ?int
    {
        return $this->category;
    }

    public function setCategory(int $category): self
    {
        $this->category = $category;

        return $this;
    }
}

Я пытаюсь много копать в Google.

, нонет решения

...