深入Django:配置站点SEO文件sitemap.xml

一、urls.py配置导入如下模块from django.contrib.sitemaps.views import sitemap 在path当中加入如下path,其中sitemaps是需要配置的字典 path('sitemap.xml', sitemap, {'sitemaps': sitemaps},name='django.contrib.sitemaps.views.sitemap') 二、配置sitemaps from django.contrib.sitemaps import GenericSitemap from article_manager.models import Article #需要导入的Models article_dict = { 'queryset': Article.objects.filter(delete=False),# 查询models的规则

解决Django报错:No changes detected

Django不能创建表的问题 No changes detected 现象是,我的项目下面migrations目录被删除,导致迁移记录被删掉,那么挽救的机会渺茫,其实还是可以挽救的。

Django网站制作根目录,巧用404,可访问根目录任意网页

在制作网页过程中,网站需要格式各样的验证。比如百度站长、搜狗联盟的校验网站。不止如此,有时写一个静态页面,也没有必要再去搞一个路由出来。这个时候,想到Django的404页面的定义,所有的不存在的页面会被定向到404页面,那么就在这块加点逻辑。首先,再setting配置文件得到自己的根目录,我定义根目录在网站之下的root目录Python变饼档TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [os.path.join(BASE_DIR, 'bianbingdang/root'),]]在urls.py文件当中写入如下逻辑Python变饼档from django.conf import urlsfrom .views import page_not_foundurls.handler404 = page_not_found在views.py定义逻辑如下,也就是说,当发现root目录下存在请求的文件时,就向浏览器返回该页面:Python

django.db.utils.OperationalError: table "xxx" already exists

执行python manage.py migrate ,得到错误 django.db.utils.OperationalError: table "article_manager_article" already exists出现这个错误之前,往往在models里面定义了一些新的字段,或者一些新的表。此时,很明显的意思是,我们迁移的数据库已经存在,无法继续。那么此时必须上一些硬本事了,首先使用 python manage.py migrate --fake <table>忽略需要创建的表,或者增加的字段。然后,连接数据库,使用SQL语句增加字段。那么下次再次运行

博客后台适配mdeditor,修复前端显示

在博客文章写作过程中,一直再寻找一个合适的编辑器。先后尝试了wangEditor、layui-Editor在用户页面得到应用。但文章的整洁程度难以和markdown媲美。mdendtor是个不错的选择,在安装完Django-enditor之后,最大的难题就是前端显示了。最初引入python库markdown,转化效果不是很理想。紧接着找到前端js对应的showdown.js库,显示效果依旧不好。于是,想到后台的预览窗口是怎么显示,直接把mdeditor的js抄到前端就行了。

Django之上传图片

Django之上传图片,这是一个例子,很多时候,由于前台传过来的内容可能存在差异。但是整个处理逻辑是相同的。