@bruno: yes functions. So in some other file I want to use models methods like
<Model>.objects. all For that I have to import the <Model> . But I am not able to. Import works fine on views.py Also, can you test this for me Create views1.py (not views.py) import your model class and in one of the functions do <Model>.objects. all and then run python manage.py runserver. I think it will break. Let me know what i am missing or will __initial__.py will solve this problem ?. On Fri, Jun 11, 2010 at 6:53 AM, rahul jain <jainwolver...@gmail.com> wrote: > Yes they are in the same directory. How to use __initial__.py ? > > On Fri, Jun 11, 2010 at 3:38 AM, Scott Gould <zinck...@gmail.com> 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 <jainwolver...@gmail.com> 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 <dih0...@gmail.com> 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 >>> > dih0...@gmail.com >>> >>> > On Jun 10, 4:46 pm, rahul jain <jainwolver...@gmail.com> wrote: >>> >> anyone on this ?? >>> >>> >> --RJ >>> >>> >> On Thu, Jun 10, 2010 at 11:34 AM, rahul jain <jainwolver...@gmail.com> >>> >> 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 django-us...@googlegroups.com. >>> > To unsubscribe from this group, send email to >>> > django-users+unsubscr...@googlegroups.com. >>> > 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 django-us...@googlegroups.com. >> To unsubscribe from this group, send email to >> django-users+unsubscr...@googlegroups.com. >> 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 django-us...@googlegroups.com. To unsubscribe from this group, send email to django-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/django-users?hl=en.