簡體   English   中英

無法更新Symfony 2.3中的新數據庫字段

[英]Unable to update new database fields in Symfony 2.3

我是3天大的Symfony php項目。 我無法保存新創建的數據庫字段。 我需要在某些已經檢測到的情況下保存字符串'收據'或'發票'。 我的代碼如下:

class ReceiptPage
{

....

    /**
     * @var string
     * @ORM\Column(name="analyzed_invoice_number", type="string", length=80, nullable=true)
     */
    private $analyzedInvoiceNumber;

塞特犬和吸氣劑:

    /**
     * @return string
     */
    public function getAnalyzedInvoiceNumber()
    {
        return $this->analyzedInvoiceNumber;
    }

    /**
     * @param string $analyzedInvoiceNumber
     */
    public function setAnalyzedInvoiceNumber($analyzedInvoiceNumber)
    {
        $this->analyzedInvoiceNumber = $analyzedInvoiceNumber;
    }

即使我在$em->flush();之前強行設置屬性$em->flush(); 它沒有被保存。

我正在保存這樣的屬性:

$receiptPage->setStatus(ReceiptPage::STATUS_FINISHED); // this is working
$receiptPage->setAnalyzedInvoiceNumber('receipt'); // this is not working
$em->flush();

有沒有與DoctrineORM有關的東西 如果我強制將值設置為現有屬性,則它正在工作但新屬性未保存。 db列是analyze_invoice_number

我從一些博客嘗試了很多但是失敗了。 有人可以幫忙嗎? 該項目還使用RedisElastic搜索 TIA

Symfony Docs for Symfony2.7在更新對象時聲明如下:

請注意,不需要調用$ entityManager-> persist($ product)。 回想一下,這種方法只是告訴Doctrine管理或“監視”$ product對象。 在這種情況下,由於您從Doctrine中獲取了$ product對象,因此它已經被管理。

雖然不是必需的,但請嘗試通過先保留此對象並在之后將其刷新來解決此問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM