2

我有两个独立的 django 应用程序连接到不同的数据库。我想制作一个父应用程序,将请求路由到两个子应用程序之一。

有可能吗?我怎样才能做到这一点?父应用程序不必连接到任何数据库,它应该只是将请求路由到子应用程序。

谢谢您的帮助。

4

1 回答 1

7

这个有可能。在 Django 中,将应用程序视为可以拼凑和组合的库。因此,假设您有以下内容:

  1. 应用 A 连接到 db A
  2. 应用 B 连接到 db B

你可以只创建一个 django 项目。将这两个应用程序放入您的安装应用程序 INSTALLED_APPS。查看django 文档中的多个数据库部分。它将解释如何配置您的应用程序,以便它们自动路由到正确的数据库。最后,您实际上并不需要创建第三个父应用程序。然后编辑您项目的 urls.py 并为每个应用程序定义一个路由。您还可以从应用 B 调用应用 A,并根据需要将请求从一个重定向到另一个。

示例 urls.py

from django.conf.urls import patterns, include, url
from django.contrib import admin
admin.autodiscover()
urlpatterns = patterns('',
    url(r'^admin/doc/', include('django.contrib.admindocs.urls')),
    url(r'^admin/', include(admin.site.urls)),
)

上面的示例将两个单独的应用程序路由到两个不同的 url。这两个应用程序django.contrib.admindocsdjango.contrib.admin都随 Django 一起提供。该示例取自Django 教程的第二部分

于 2012-12-05T20:34:52.350 回答