簡體   English   中英

CodeIgniter和Datamapper:一對多關系

[英]CodeIgniter & Datamapper: One to many Relationship

我試圖在休息室城市之間建立一對多關系,因此,一個休息室可以在許多城市使用-“肯德基” =>倫敦,巴黎,馬德里等。並且我收到一個錯誤- 表'databasename.cities_lounges'不存在 ,但是有一個名為lounge_cities的表。 當我將其更改為citys_lounges時,它給了我不同的錯誤,例如describeities_lounges

這是lounge_cities表包含的內容:“ id,lounge_id(INT,UNSIGNED),city_id(INT,UNSIGNED)

這是我的模型:

<?php

 class Lounge_model extends DataMapper
 {
public function __construct()
{
    parent::__construct();
}

var $table = 'lounges';

var $has_one = array('city_model');


  }

<?php

  class City_model extends DataMapper
  { 
public function __construct()
{
    parent::__construct();
}

var $table = 'cities';

var $has_many = array('lounge_model');

   }

這是我要獲取它的控制器的功能:

public function id($id)
{
    $lounge = new lounge_model();
    $lounge->where('id', $id)->get();

    $relationshiptest = $lounge->city_model->get();
    var_dump($relationshiptest);
      }

這就是我遵循的: http : //datamapper.wanwizard.eu/pages/accessingrelations.html

有人可以幫我,但不要指出我的手冊,因為我很難理解...? 干杯

您具有一對多關系,因此只需要在“ lounges”數據庫表中添加一列“ city_model_id” ...就不需要“ lounge_cities”表了(根據本來應該是“ cities_lounges”到“表命名規則”:

聯接表必須使用要聯接的兩個表名按字母順序命名,並用下划線(_)分隔。 例如,用戶和國家/地區的聯接表是country_users。 來源

暫無
暫無

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

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