Django项目文件模板修改

    折腾Django项目文件模板源于django-admin.py manage.py等生成的项目文件没有经典头注释:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
     而我写了一个含有中文的Django网页,manage.py runserver时提示error,说要在文件头加注:
# -*- coding: utf-8 -*-
     因源文件已保存为uft-8格式,那现在只要在文件头加注就OK(其实对Python文件、网页等对应编码理解得稀里糊涂 )。但总不可能一个个手动加注释吧,google搜索时使用“Django 模板”关键字搜到几乎是生成网页的template问题,水平不行没搜到项目文件模板怎么个改法。Django源码在手上,只好顺藤摸瓜了,从项目中的manage.p文件追寻如下一些文件:
D:\Python27\Lib\site-packages\django\core\management\__init__.py
D:\Python27\Lib\site-packages\django\utils\importlib.py
D:\Python27\Lib\site-packages\django\core\management\commands\startapp.py
D:\Python27\Lib\site-packages\django\core\management\templates.py
    在上面最后一个文件中handle方法有段代码有生成项目文件的模板相关:
if filename.endswith(extensions) or filename in extra_files:
    content = content.decode('utf-8')
    template = Template(content)
    content = template.render(context)
    content = content.encode('utf-8')
    修改这个方法,重新生成的项目文件已包含'# coding: utf-8'这货,小开心。但硬编码这生成代码不好,于是接着找找,最后找到了Django项目文件模板文件夹,尽情修改吧哈:
D:\Python27\Lib\site-packages\django\conf\app_template
    PS: 话说Django这货为何不在模板上添加文件编码注释? 这不符合Python啊,想想是不得去Django源码上贡献一下哈,笑话了:)

你可能感兴趣的:(Django项目文件模板修改)