2016-09-15 67 views
0

我有一個擴展服務於創建實體(問題)的路徑,該實體有一個相關條目(每個條目有0,1個或多個相關問題)。處理與Doctrine/Bolt的內容類型關係EM

我似乎無法獲得bolt的save/doctrine的持久化方法來實際上保持關係。我已經試過如下:

$question = $repo->create([ 
    'question' => $request->get('question', 'What is love?'), 
    'status' => 'draft', 
    'entries' => [$entry] 
]); 

$question->relation->add($entry)

$question->setRelation(new Collection\Relations([$entry], $em))

(編輯)我也試過

$entry = $em->find('entries', $request->get('entry', 1)); 
$related = $em->createCollection('Bolt\Storage\Entity\Relations'); 
$related->add(new Relations([ 
    'from_contenttype' => $question->getContenttype(), 
    'from_id' => $question->getId(), 
    'to_contenttype' => $entry->getContenttype(), 
    'to_id' => $entry->getId() 
])); 

$question->setRelation($relation); 

每下方的響應,但仍然不工作。

沒有哪個工作 - 它正確保存問題(內容)實體,但不保存關係。真的不知道在哪裏可以從這裏去...

回答

0

這裏有一個我正在進行的測試,我知道目前的語法很醜,計劃是添加更多的輔助方法,但這確實有效。

$repo = $app['storage']->getRepository('pages'); 

$newPage = $repo->create( 
    [ 
     "title" => 'An Example Title', 
     "slug" => 'an-example-title', 
     "status" => 'published', 
     "teaser" => 'An intro teaser goes here', 
     "body" => 'Lorem ipsum dolor sit amet, consectet adipisici.', 
    ] 
); 

$newPage->getRelation()->setFromPost(['entries' => [1]], $newPage); 
$repo->save($newPage); 
相關問題