我喜欢Django,但对于一个特定的应用程序,我只想使用它的一部分,但我对Django在内部的工作方式还不够熟悉,所以也许有人能给我指出正确的方向,告诉我需要判断什么.

具体地说,我要使用:

  • 模型和数据库抽象
  • caching API,虽然我希望通过缓存而不是HTML生成来避免数据库查找,而且由于Django中的缓存框架是为后者设计的,我还不确定这是否真的合适.

我将不使用:

  • 模板
  • urlconfigs

或者,更确切地说,我既没有使用HTTP也没有使用HTML.所以基本上,我的输入/输出链与平常不同.

这个能行吗?

在Django中,我个人的杀手级特性是可以使用模型进行的对象/数据库映射,所以如果有另一种技术(不一定是Python,我正处于设计阶段,而且我对语言和平台非常不了解)给我同样的能力,那也是很棒的.

推荐答案

我自己使用Django进行对象/数据库映射,而不使用它的urlconfigs.只需创建一个名为djangosettings.py的文件并插入必要的配置,例如:

DATABASE_ENGINE   = 'oracle'
DATABASE_HOST     = 'localhost'
DATABASE_NAME     = 'ORCL'
DATABASE_USER     = 'scott' 
DATABASE_PASSWORD = 'tiger'

然后在您的常规Python代码中,执行

import os
os.environ["DJANGO_SETTINGS_MODULE"] = "djangosettings"

在导入任何Django模块之前.这将允许您使用Django的object/db映射,而无需实际使用Django项目,因此您可以将其用于独立脚本或其他web应用程序或任何您想要的东西.

至于缓存,如果您不想使用Django,那么您可能应该决定使用什么,并从那里开始.我建议使用CherryPy,它不使用Django风格的正则表达式URL映射,而是根据函数名自动将URL映射到函数.CherryPy主页顶部有一个例子:http://cherrypy.org/

CherryPy有自己的缓存系统,因此您可以完成与Django完全相同的事情,但无需使用Django的urlconfig系统.

Django相关问答推荐

Django显示交叉表格

Django中的DateTimeField到DateField

执行官/start.sh:没有这样的文件或目录

从多个数据库访问 Django 会话

测试 - 两个类共享相同的登录代码,但它只能在一个类中工作

源自访问外键关系的模型方法 get_absolute_url 的 django 重复 SQL 查询

在 Django 中按月份和年份对帖子进行分类

有谁知道是否可以将您的 Django Heroku 应用程序放到 App Store/Google Play 上?

在 python 视图中检测移动浏览器

遍历django模板中的外键相关表

如果上下文中缺少变量,如何使 Django 模板引发错误

Django 相当于 COUNT 和 GROUP BY

Django中视图的多个decorator :执行顺序

如何在 django admin 中显示布尔属性

django-object-permissions Vs django-guardian Vs django-authority

Python Django 模板和测试变量是否为空或空字符串

整数的Python正则表达式?

Django:以 10 为底的 int() 的无效文字

Django 在 css 文件中使用背景图像的方法

APIView 类和视图集类之间的区别?