Django功能模块的单独使用

http://blog.csdn.net/drgnn/article/details/7930664


Django是一个不错的基于Python的Web框架,但它的很多东西不太方便分离出来,用到别的地方,或者使用别的相应的模块替换,这是Django的缺点之一。但我们不可能每次要使用Django中的哪怕一个小小的功能模块也要创建一个完整的Django工程吧?其实,很多功能或模块,在不脱离Django的情况下,还是可以在一定程序上单独使用的。(注意:我们这里说的是单独使用,不是说分离或剥离使用,我们不对Django源码作任何改动)

1、单独使用邮件模块
[python]  view plain copy
  1. #!/usr/bin/python  
  2. #-*- coding: utf-8 -*-  
  3.   
  4. from django.conf import settings  
  5. settings.configure(  
  6.     EMAIL_HOST = 'smtp.somesite.com',  
  7.     EMAIL_PORT = '25',  
  8.     EMAIL_HOST_USER = 'someone@somesite.com',  
  9.     EMAIL_HOST_PASSWORD = '123456'  
  10. )  
  11.   
  12. from django.core.mail import send_mail  
  13. send_mail('Subject''Message''someone@somesite.com', ['another@anothersite.com'],  
  14.     fail_silently = False)  
2、单独使用ORM
[python]  view plain copy
  1. #!/usr/bin/python  
  2. #-*- coding: utf-8 -*-  
  3.   
  4. from django.conf import settings  
  5. settings.configure(  
  6.     DATABASES = {  
  7.         'default': {  
  8.             'ENGINE''django.db.backends.sqlite3',  
  9.             'NAME''/tmp/mydb.db3',  
  10.             'USER''',  
  11.             'PASSWORD''',  
  12.             'HOST''',  
  13.             'PORT''',  
  14.         }  
  15.     }  
  16. )  
  17.   
  18. from django.db import models  
  19. class MyModel(models.Model):  
  20.     name = models.CharField(max_length = 50)  
  21.     gender = models.BooleanField(default = False)  
  22.     age = models.IntegerField(default = 0)  
  23.       
  24.     def __unicode__(self):  
  25.         return self.name  
  26.   
  27. myModel = MyModel()  
  28. myModel.name = 'Jim Green'  
  29. myModel.gender = True  
  30. myModel.age = 18  
  31. myModel.save();  
3、单独使用模板
[python]  view plain copy
  1. #!/usr/bin/python  
  2. #-*- coding: utf-8 -*-  
  3.   
  4. from django.conf import settings  
  5. import os.path  
  6. settings.configure(  
  7.     TEMPLATE_LOADERS = (  
  8.         'django.template.loaders.filesystem.Loader',  
  9.     ),  
  10.     TEMPLATE_DIRS = (  
  11.         os.path.dirname(__file__), # 在当前路径搜索模板文件  
  12.     )  
  13. )  
  14.   
  15. from django.template import loader, Context  
  16. t = loader.get_template('demo.tpl'# demo.tpl必须与该代码在同一目录,文件内容见下一段代码  
  17. context_dict = {  
  18.     'name' : 'Jim',  
  19.     'gender' : 'Male',  
  20.     'age' : '18',  
  21. }  
  22. c = Context(context_dict)  
  23. print t.render(c)  
[html]  view plain copy
  1. <h1>Name: {{ name }}</h1>  
  2. <p>Gender: {{ gender }}</p>  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值