时,我想,当我更改数据库更新URL模式匹配我的产品,所以我用urls.py:无法动态改变URLPATTERN更改数据库
main_cagetory_url=Product_category.objects.get_all_product_category_url()
main_cagetory_url_string = '(?:' + '|'.join(main_cagetory_url) + ')'
product_url=Product.objects.get_all_product_url()
product_url_string = '(?:' + '|'.join(product_url) + ')'
menu_url=Menu.objects.get_all_menu_url()
menu_url_string = '(?:' + '|'.join(menu_url) + ')'
urlpatterns = patterns('',
(r'^$',menu_page),
(r'^home_vi$',home_vi),
(r'^home_en$',home_en),
(r'^'+menu_url_string+'$',menu_page),
(r'^'+main_cagetory_url_string+'$',list_product),
(r'^'+product_url_string+'$',product_detail),
(r'^search_result$',search_result),
(r'^admin/', include(admin.site.urls)),)
每一件事情,当我正在开发OK我PC。但是当我将我的项目上传到主机。每次添加新的Product_category或Product时。当我点击新的Product_category或新产品时,Django无法实现该更改并显示404错误。
我该如何解决该错误?
在开发模式下工作的原因是因为dev服务器会自动重新加载任何文件(例如'urls.py')。这在生产服务器上不会发生(并且您不希望它发生)。我从来没有必要自己做这件事,所以我正在仔细查看代码和文档以查看钩子的位置。 – 2012-01-07 16:22:26