Doktrin tembel yükleme

0 Cevap php

Ben sadece Doktrin yüzleşmekten alma ve modellerin önerilen tembel yükleme kullanıyorum. Öğreticiler başı olarak, bir doktrin önyükleme dosya oluşturdum:

<?php
require_once(dirname(__FILE__) . '/libs/doctrine/lib/Doctrine.php');
spl_autoload_register(array('Doctrine', 'autoload'));
$manager = Doctrine_Manager::getInstance();
$manager->setAttribute(Doctrine_Core::ATTR_AUTO_ACCESSOR_OVERRIDE, true);
$manager->setAttribute(Doctrine_Core::ATTR_MODEL_LOADING, Doctrine_Core::MODEL_LOADING_CONSERVATIVE);
Doctrine_Core::loadModels(array(dirname(__FILE__) . '/models/generated', dirname(__FILE__) . '/models')); //this line should apparently cause the Base classes to be loaded beforehand

Benim modelleri ve temel sınıflar tüm Doktrini tarafından yaratılmıştır.

Aşağıdaki gibi ben de basit bir test dosyası oluşturdum:

<?php
require_once('doctrine_bootstrap.php');

$user = new User();
$user->email = 'test@test.com';
echo $user->email;

Ancak, bu aşağıdaki hata üretir:

Fatal error: Class 'User' not found in E:\xampp\htdocs\apnew\services\doctrine_test.php on line 4

Ben açıkça BaseUser.php ve User.php dosyaları gerektirir Ancak, o zaman herhangi bir hata olmadan çalışıyor

<?php
require_once('doctrine_bootstrap.php');
require_once('models/generated/BaseUser.php');
require_once('models/User.php');

$user = new User();
$user->email = 'test@test.com';
echo $user->email;

Yani, Doctine modeller doğru otomatik yükleme değil gibi görünüyor. Ne eksik?

0 Cevap