Also, i would do...
admin/models/admin/acl/user.php

which represents the table admin_acl_user. Making a module out of the ACL
Player should be grouped into an administration module. ( atleast thats how
i see it ).

-jk


jkush1121 wrote:
> 
> See, I think I was a bit unclear with my approach. It's a bit different.
> Here's how I organized it:
> 
> The actual layout turns out as follows during the forloop:
> 
> /app
> /app/modules
> /app/modules/core
> /app/modules/core/models <-- Added to inclusion path during the forloop
> /app/modules/core/models/Core 
> /app/modules/core/models/Core/User.php
> /app/modules/payment
> /app/modules/payment/models <-- Added to inclusion path during the forloop
> /app/modules/payment/models/Payment
> /app/modules/payment/models/Payment/Securepay.php
> 
> However, now I have the ability to create a new object of
> Payment_Securepay(). 
>    => Payment_Securepay  === Payment/Securepay.php
> 
> I did this for a couple reasons:
> 
> 1.) Now I have the ability to reflect the table payment_securepay
> accurately ( without having to make modifications ). 
> The php_inclusion path has already been set during the forloop of my
> directory:
> 
> Project::register('original_include_path',    get_include_path());
>               \$paths[] = BP . DS . 'app' . DS . 'modules';
>               \$paths[] = BP . DS . 'lib';
>               \$dir = new DirectoryIterator(Project::getRoot().DS.'modules');
>               foreach(\$dir as \$file){
>               if (\$file->isDot() || !\$file->isDir()) {
>                               continue;
>               }
> ---> ( HERE)                  \$paths[] = \$file->getPathname().DS.'models';
>               }
>               set_include_path( implode(PS, \$paths) . PS .
> Project::registry('original_include_path'));
> 
> 2. ) I also now can separate my models into various modules. ( obviously )
> 
> 3.) My little trick was nothing more than a simple way to utilize the
> models a different way.... 
> 
> For example,
> 
> Project::getModel('core/session', array('name'=>'something'))->start();
> 
> This will do...
> 
> 1.) require_once 'Core/Session.php';
> 2.) pass array('name'=>'something')
> 3.) calls start method on the returning object.
> 
> For you:
> 
> The Acl/Users call should request:
> 
> /app
> /app/modules
> /app/modules/acl
> /app/modules/acl/models <-- Added to inclusion path during the forloop
> /app/modules/acl/models/Acl
> /app/modules/acl/models/Acl/Users.php
> 
> which will be...
> 
> class Acl_Users extends Zend_Db_Table_Abstract
> 
> 
> which then ofcourse,
> 
> table acl_users...
> 
> 
> Let me know if you still are having issues.
> 
> 
> -jk
> 
> 
> Ghrae wrote:
>> 
>> I followed you up to a point.
>> 
>> 1) I didn't have modules in my layout.  But given the size of this
>> project
>> it makes sense so I reorganized my folder structure to use models (this
>> alone may make organization much easier the more I think about it)
>> 
>> 2) I had to add a $paths[] = $moduleDir; so that I could access forms
>> 
>> 3) $row =
>> Project::getModel('Acl/Users')->fetchRow($user->select()->where('user_name
>> =
>> ?', $form->getValue('username')));
>> 
>> Returns an error: Fatal error: Call to a member function fetchRow() on a
>> non-object in
>> C:\wamp\www\el-cel\application\modules\User\controllers\IndexController.php
>> on line 126
>> 
>> My layout was (in part)
>> - application
>> - - modules
>> - - - user
>> - - - - models
>> - - - - - acl
>> - - - - - - users.php
>>  
>> 
>> 
>> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/Models-and-folder-grouping-tp19412763p19458155.html
Sent from the Zend Framework mailing list archive at Nabble.com.

Reply via email to