Hi, we just got the same problem here,
To solve it, you have to modify autoload.yml in lib/config/config :
You can specify a folder to be not loaded by autoload, so we added
plugins to the exclude option, then we dont let smfony to load the
data dir wich contains the templates.
...
name: project
path: %SF_LIB_DIR%
recursive: true
exclude: [plugins,model, symfony, vendor]
...
project_plugins_sfDoctrine:
name: doctrine
path: %SF_LIB_DIR%/plugins/sfDoctrinePlugin
recursive: true
exclude: [data]
...
On 16 déc 2010, 19:02, mailinglist-junkie <[email protected]> wrote:
> Hi,
>
> I have a strange behaviour and I wonder if anybody can tell me, how
> this can be solved.
>
> The problem is, that on my server, I have the following entry in my
> autoloac_config_yml.php:
>
> 'baseformfilterdoctrine' => '/var/www/jaduda/lib/plugins/
> sfDoctrinePlugin/data/generator/sfDoctrineFormFilter/default/template/
> sfDoctrineFormFilterBaseTemplate.php',
>
> That means he searches for the BaseFormFilterDoctrine class in the
> template file and that ends up in a mess and the page not being
> displayed.
>
> On my local development computer this works fine. Here I have the
> correct line:
>
> 'baseformfilterdoctrine' => '/var/www/jaduda/lib/filter/doctrine/
> BaseFormFilterDoctrine.class.php',
>
> So why do I have different results with the same code on different
> computers?
>
> I did some researches and found out, that maybe the order of the
> files, where symfony looks for the classes is important.
>
> Executing the command
>
> grep -r "BaseFormFilterDoctrine extends" * | grep class
>
> on my server, I get the following result:
>
> lib/filter/BaseFormFilterDoctrine.class.php:abstract class
> BaseFormFilterDoctrine extends sfFormFilterDoctrine
> lib/filter/doctrine/StampSheetFormFilter.class.php:abstract class
> BaseFormFilterDoctrine extends sfFormFilterDoctrine {
> lib/filter/doctrine/StampFormFilter.class.php:abstract class
> BaseFormFilterDoctrine extends sfFormFilterDoctrine {
> lib/filter/doctrine/ProfileAttributeValueFormFilter.class.php:abstract
> class BaseFormFilterDoctrine extends sfFormFilterDoctrine {
> lib/filter/doctrine/QuestionAnswerFormFilter.class.php:abstract class
> BaseFormFilterDoctrine extends sfFormFilterDoctrine {
> lib/filter/doctrine/QuestionFormFilter.class.php:abstract class
> BaseFormFilterDoctrine extends sfFormFilterDoctrine {
> lib/filter/doctrine/BaseFormFilterDoctrine.class.php:abstract class
> BaseFormFilterDoctrine extends sfFormFilterDoctrine
> lib/filter/doctrine/ProfileAttributeFormFilter.class.php:abstract
> class BaseFormFilterDoctrine extends sfFormFilterDoctrine {
> lib/filter/doctrine/ProfileActivityFormFilter.class.php:abstract class
> BaseFormFilterDoctrine extends sfFormFilterDoctrine {
> lib/filter/doctrine/
> QuestionAnswerCharacteristicFormFilter.class.php:abstract class
> BaseFormFilterDoctrine extends sfFormFilterDoctrine {
> lib/plugins/sfDoctrinePlugin/test/functional/fixtures/lib/filter/
> doctrine/BaseFormFilterDoctrine.class.php:abstract class
> BaseFormFilterDoctrine extends sfFormFilterDoctrine
> lib/plugins/sfDoctrinePlugin/data/generator/sfDoctrineFormFilter/
> default/template/sfDoctrineFormFilterBaseTemplate.php:abstract class
> BaseFormFilterDoctrine extends sfFormFilterDoctrine
>
> So the template file sfDoctrineFormFilterBaseTemplate.php is the last
> to be found and therefor it is written in the config_autoload.yml.php
>
> On my development computer, the output is in the different order
> (files in the plugins folder are first, filter folder files follow):
>
> lib/plugins/sfDoctrinePlugin/data/generator/sfDoctrineFormFilter/
> default/template/sfDoctrineFormFilterBaseTemplate.php:abstract class
> BaseFormFilterDoctrine extends sfFormFilterDoctrine
> lib/plugins/sfDoctrinePlugin/test/functional/fixtures/lib/filter/
> doctrine/BaseFormFilterDoctrine.class.php:abstract class
> BaseFormFilterDoctrine extends sfFormFilterDoctrine
> lib/filter/BaseFormFilterDoctrine.class.php:abstract class
> BaseFormFilterDoctrine extends sfFormFilterDoctrine
> lib/filter/doctrine/QuestionAnswerFormFilter.class.php:abstract class
> BaseFormFilterDoctrine extends sfFormFilterDoctrine {
> lib/filter/doctrine/QuestionFormFilter.class.php:abstract class
> BaseFormFilterDoctrine extends sfFormFilterDoctrine {
> lib/filter/doctrine/
> QuestionAnswerCharacteristicFormFilter.class.php:abstract class
> BaseFormFilterDoctrine extends sfFormFilterDoctrine {
> lib/filter/doctrine/ProfileActivityFormFilter.class.php:abstract class
> BaseFormFilterDoctrine extends sfFormFilterDoctrine {
> lib/filter/doctrine/ProfileAttributeValueFormFilter.class.php:abstract
> class BaseFormFilterDoctrine extends sfFormFilterDoctrine {
> lib/filter/doctrine/StampFormFilter.class.php:abstract class
> BaseFormFilterDoctrine extends sfFormFilterDoctrine {
> lib/filter/doctrine/StampSheetFormFilter.class.php:abstract class
> BaseFormFilterDoctrine extends sfFormFilterDoctrine {
> lib/filter/doctrine/ProfileAttributeFormFilter.class.php:abstract
> class BaseFormFilterDoctrine extends sfFormFilterDoctrine {
> lib/filter/doctrine/BaseFormFilterDoctrine.class.php:abstract class
> BaseFormFilterDoctrine extends sfFormFilterDoctrine
>
> That means that the sfDoctrineFormFilterBaseTemplate is found first
> and will be overwritten at the end by lib/filter/doctrine/
> BaseFormFilterDoctrine.class.php
>
> Did you get my point?
>
> The question is: How can I tell symfony to take the real one, and not
> the template class. Or, how can I prevent symfony from taking Template
> classes for the autoload file.
>
> I hope you understood what I mean.
>
> Thanks for your help.
> Roman
--
If you want to report a vulnerability issue on symfony, please send it to
security at symfony-project.com
You received this message because you are subscribed to the Google
Groups "symfony users" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/symfony-users?hl=en