Как сделать взаимодействие между различными приложениями Django на одном сайте? - PullRequest
6 голосов
/ 04 ноября 2011

Я только что узнал о приложениях Django.Я хочу знать, что на одном сайте, если я делаю разные приложения.Например, пользователи, профили, опросы, блоги, комментарии, вакансии, приложения, как мне управлять ими, чтобы они были интерактивными?И как должна выглядеть концепция приложения?Я хочу, чтобы все было свободно связано, поэтому спрашиваю?Rails работают по принципу REST, так поддерживает ли Django это также с использованием приложений?Может быть, мои вопросы кажутся немного двусмысленными, потому что я новичок в django, и некоторые из моих концепций все еще запутаны.

Пожалуйста, расскажите, что вы когда-либо знали.

1 Ответ

4 голосов
/ 04 ноября 2011

Общая идея заключается в том, что приложения должны быть как можно слабосвязанными.Цель состоит в том, чтобы иметь полностью автономную функциональность.Сейчас, конечно, это не всегда возможно, и часто даже имеет смысл использовать функциональность из другого приложения.Для этого вы просто импортируете все, что вам нужно.Например, если вашему приложению "блоги" нужно было работать с моделью Comment в приложении "комментарии", вы просто добавили бы следующее в начало файла python, в котором вы работаете:

from comments.models import Comment

Затем вы можете использовать Comment, как если бы оно было определено прямо в том же файле.

Что касается REST, то взгляды Джанго гораздо более плавные.Вы можете назвать свое мнение как угодно;вам нужно только подключить его к нужному urlpattern в urls.py.Представления Django могут возвращать любой тип контента, вы просто готовите ответ и указываете, каким mimetype он будет служить (по умолчанию HTML).

...