If you have two models that need to explicitly refer to each other then they should probably be in the same app.

If they need to be in two apps, you can have a foreign key in one and from the other use the RelatedManager to access the first.

You'll have to make these decisions based upon what your app(s) will be doing. If one set of functionality can be completely isolated so that someone could maybe use it in other projects, then it should be a separate app. Then maybe your other app can use resources from that app, but it shouldn't be a two-way conversation. Another possibility is that both apps are isolated, and a third app with no models of its own has the views that actually run your site.

Play with it, draw some pictures, and figure out what the relationships really are. And if you decide to experiment, you can always use South to migrate your schema and data so your project can evolve as you learn more about it.

Shawn

South:
http://south.aeracode.org/

--
You received this message because you are subscribed to the Google Groups "Django 
users" group.
To post to this group, send email to django-users@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.

Reply via email to