【问题标题】:Doctrine adding a many-to-many relation for transient records为临时记录添加多对多关系的学说
【发布时间】:2011-03-15 03:35:59
【问题描述】:

两个模型站点和语言共享多对多关系(它们是双向的) 如何添加它们之间的关系?

理想情况下我想这样做:(将现有语言添加到新站点)

$site = new Site();
$site->name = "Google"
$site->url = "www.google.com";

---- 添加语言的代码----

$site->save();

或者我应该只在调用 save() 之后添加语言,如果是这样,那是怎么做的?

提前致谢

【问题讨论】:

    标签: orm doctrine many-to-many record transient


    【解决方案1】:
    【解决方案2】:

    发现问题:关联表的主键没有设置为“自增”

    此代码有效

    $site = new Site();
    $site->name = "Google";
    $site->url = "www.google.com";
    // now add languages
    $langIds = array(1, 2,3);
    foreach ($langIds as $id) {
        $site->SiteLanguage[]->languageId = $id;
    }
    
    // now call save --- this creates a new site along with associations
    $site->save();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-05-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多