Yes they are in the same directory. How to use __initial__.py ? On Fri, Jun 11, 2010 at 3:38 AM, Scott Gould <[email protected]> wrote: > Did you put Test1.py and Test2.py into a "models" directory where > models.py would normally be, and add an __initial__.py file to it? > > On Jun 10, 5:18 pm, rahul jain <[email protected]> wrote: >> HI Dan, >> >> Thanks for your response but that will not solve my problem. >> >> I am not splitting models. I am splitting actions defined in the >> models across multiple files. >> >> So suppose >> >> one of my model actions is calling which in turn calls the constructor >> or simple functions defined in normal python files >> >> for ex: >> >> def action (self, request, queryset): >> >> Test1(<params>) //calls default constructor of the class >> Test2(<params>) >> >> Now each of these are separate class files names as Test1.py Test2.py. >> >> In each of these files i want to do this >> >> from <project_name>.<app name>.models import <class name> >> >> But I get this error >> >> ImportError: cannot import name <class name> >> >> I tired various other variotions like just >> >> from models import <class name> >> >> from <app name>.models import <class name> >> >> or without from >> >> but none of them are working. >> >> Also, in order to call this Test1(<params>) I thought if I import >> Test1 in models then it will just work but again not >> >> --RJ >> >> >> >> On Thu, Jun 10, 2010 at 1:57 PM, Dan Harris <[email protected]> wrote: >> > When you split things out into multiple files or directories you have >> > to remember to import them into the models.py file or the __init__.py >> > file (if using a directory). >> >> > So if i had some models in a new file "extraModels.py" for example >> >> > # In extraModels.py >> > class ExtraModel(models.Model): >> > pass >> >> > Then in the regular "models.py" >> >> > # In models.py >> > from extraModels import ExtraModel >> >> > class RegularModels(model.Model): >> > pass >> >> > The key is that you ahve to import any models in your split files into >> > your normal models.py file. This is because Django looks for models in >> > the models.py file only. If you make a models directory, you have to >> > import all models you want Django to recognize into your __init__.py >> > file within the models directory. >> >> > Hopefully this makes sense, if not I can try to be more clear. >> >> > Dan Harris >> > [email protected] >> >> > On Jun 10, 4:46 pm, rahul jain <[email protected]> wrote: >> >> anyone on this ?? >> >> >> --RJ >> >> >> On Thu, Jun 10, 2010 at 11:34 AM, rahul jain <[email protected]> >> >> wrote: >> >> > Hi Django, >> >> >> > In my app directory, I splitted my models and views.py into multiple >> >> > files since they start becoming very long but django is not able to >> >> > recognize those files . >> >> > It only recognizes models.py, views.py, tests.py (default ones). >> >> >> > So In my other files If i do this >> >> >> > from <project_name>.<app name>.models import <class name> >> >> >> > I get this error >> >> >> > ImportError: cannot import name <class name> >> >> >> > If I do the same on views.py, it just works fine. >> >> >> > Even on Eclipse I can see Django default files with different symbol >> >> > and python files with different symbols. >> >> >> > How to solve this problem ? >> >> >> > --RJ >> >> > -- >> > You received this message because you are subscribed to the Google Groups >> > "Django 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 >> > athttp://groups.google.com/group/django-users?hl=en. > > -- > You received this message because you are subscribed to the Google Groups > "Django 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/django-users?hl=en. > >
-- You received this message because you are subscribed to the Google Groups "Django 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/django-users?hl=en.

