使用Django 1.7中的AppConfig ready方法在django启动时加载静态
发布时间:2020-12-20 13:46:16 所属栏目:Python 来源:网络整理
导读:我有一些静态位置数据要加载,以便它在整个应用程序中可用,如内存缓存. 我试图在AppConfig上覆盖ready()但是数据没有从数据库加载,而ready()也被调用了两次. from django.apps import AppConfigclass WebConfig(AppConfig): name = 'useraccount' verbose_nam
我有一些静态位置数据要加载,以便它在整个应用程序中可用,如内存缓存.
我试图在AppConfig上覆盖ready()但是数据没有从数据库加载,而ready()也被调用了两次. from django.apps import AppConfig class WebConfig(AppConfig): name = 'useraccount' verbose_name = 'User Accounts' locations = [] def ready(self): print("Initialising...") location = self.get_model('Location') all_locations = location.objects.all() print(all_locations.count()) self.locations = list(all_locations) 任何提示? 解决方法
为了加载app中的一些静态数据,为get数据创建一个单独的文件 //文件/app_util.py def get_country(): ????如果Student.objects.all().count == 0: ???????//你的代码 ????其他: ???????//你的代码 导入app_util并从url.py中调用它 //文件/url.py admin.autodiscover() urlpatterns = patterns(‘equity_funds_investor_app’,???????????????????????# 例子: ???????????????????????url(r’^ $’,’views.index’),??????????????????????) //调用save / get方法 app_util.get_country() 注意:当你想在你的应用程序开始时保存/获取一些数据时,你可以遵循相同的过程 当你在runserver之后发出第一个请求时,url.py文件只处理一次 并调用您的自定义函数
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |