CodeIgniter ve Doktrin: Temel tablo veya görünümü bulunamadı

0 Cevap php

Ben düzeltmeler inanıyorum iki ayarlamalar dışında, kelime için the documentation neredeyse kelime takip ediyorum.

İlk ayarı: Ben gereksiz ortadan DIRECTORY_SEPARATOR in system/application/doctrine.php:

//this produces "...system/application//fixtures"
$config = array('data_fixtures_path'  =>  dirname(__FILE__) . DIRECTORY_SEPARATOR . '/fixtures',

//Replaced with:
$config = array('data_fixtures_path'  =>  dirname(__FILE__) . DIRECTORY_SEPARATOR . 'fixtures',

Elde edilen yolları doğru görünür.

Ikinci ayar: oluşturulan modeller (örneğin models/User.php) Doctrine_Record uzatmak baz modelleri yüklemek gibi görünüyor, bu yüzden açık bir require() her çağrı katmayan böylece gibi modellemek:

require('generated/BaseUser.php');

class User extends BaseUser { ... }

Yani, benim şimdiki sorun: o ilk defa tabloları oluşturmak için zamanı geldiğinde:

$ ./doctrine build-all-reload
build-all-reload - Are you sure you wish to drop your databases? (y/n)
y
build-all-reload - Successfully dropped database for connection named 'mydb'
build-all-reload - Successfully created database for connection named 'mydb'
build-all-reload - Created tables successfully
SQLSTATE[42S02]: Base table or view not found: 1146 Table 'mydb.user' doesn't exist

Doktrin mutlu boş tabloları, tabloları damla damla veritabanları ve veritabanı oluşturmak gibi görünüyor, ama neden olmaz create masaları ben çözemiyorum. Açıkça Created tables successfully diyor, ama SHOW TABLES; döner "veritabanında bulunamadı tabloları."

Doktrin ALL PRIVILEGES var ben aynı MySQL kullanıcı, kullanıyor.

Herhangi Doktrin tabloları oluşturmak olamaz neden fikir? Umarım sadece kör ve / veya aptal değilim.

Alternatif olarak, ben sadece bu sorunu hata ayıklamak için kendi üzerinde çalıştırabilirsiniz benim yaml şema veya modellere dayalı ifadeler CREATE SQL bir dosya üretebilir ben yolu var mı?

0 Cevap