PHP Doctrine 1.2 tablo isimleri

2 Cevap php

Ben 1.1.6 den 1.2.1 benim doktrini ORM yükseltmeye çalışıyorum ama tablo adları ile bir BC sorunu enountered ettik.

: Benim tablo isimlerinden bazıları birkaç kelime (örneğin t_foo_bar sınıf Falanca için) t_ önek ile otomatik olarak oluşturulur var

$manager->setAttribute(Doctrine_Core::ATTR_TBLNAME_FORMAT, 't_%s');

Bu, daha önceki sürümlerinde de iyi çalıştı. Doktrin (yerine bir çizgi ile t_foo_bar arasında) t_foobar arıyor gibi 1.2.1 Bununla birlikte, görünüyor.

Eğer tablo isimlerini değiştirmeden bu çözmek için nasıl biliyor musunuz?

2 Cevap

Lütfen model setTableDefinition() yöntem size $this->setTableName('t_foo_bar') açıkça tablo adını ayarlamak için arayabilirsiniz. Bazı sınıf adını alırsa, uygulama çalışmaya devam edecek gibi bu, çok daha iyidir.

Oh, ben google ile burada var. Ben sadece Symfony başladı ve varolan web uygulaması için Symfony + doktrin uygulaması eklemek istiyorum ettik.

Ben Doktrin dokümanlar (ikinci çizgiyi fark) bu şeyler bulduk:


Group:
  **tableName: group_table**
  columns:
    id:
      type: integer(4)
      autoincrement: true
      primary: true
    name:
      type: string(255)
  relations:
    Users:
      foreignAlias: Groups
      class: User
      refClass: GroupUser

Çok yml dosyasında tablo adını tanımlayabilirsiniz görünüyor.