PyCharm文件模板配置的完整指南
作者:Yant224
这篇文章主要介绍了PyCharm文件模板配置的全流程,涵盖模板创建、变量使用(如日期、用户名)、LiveTemplates设置、团队共享及最佳实践,通过统一代码结构提升开发效率,需要的朋友可以参考下
实现创建文件时自动添加自定义模板
一、完整配置流程
1. 打开模板设置


2. 配置全局模板
在 File and Code Templates 界面:
- Files 标签页:设置各类文件模板
 - Includes 标签页:创建可复用的模板片段
 - Code 标签页:设置代码片段模板
 
3. 创建 Python 文件模板
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : ${DATE} ${TIME}
# @Author  : ${USER}
# @File    : ${NAME}.py
# @Software: ${PRODUCT_NAME}
"""
${DESCRIPTION}
"""
import os
import sys
def main():
    pass
if __name__ == '__main__':
    main()

4. 添加自定义变量
| 变量 | 描述 | 示例 | 
|---|---|---|
| ${DATE} | 当前日期 | 2023-07-26 | 
| ${TIME} | 当前时间 | 14:30 | 
| ${USER} | 系统用户名 | john | 
| ${NAME} | 文件名(不含扩展名) | my_script | 
| ${PRODUCT_NAME} | PyCharm 产品名 | PyCharm | 
| ${YEAR} | 当前年份 | 2023 | 
| ${MONTH} | 当前月份 | 07 | 
| ${DAY} | 当前日期 | 26 | 
| ${HOUR} | 当前小时 | 14 | 
| ${MINUTE} | 当前分钟 | 30 | 
5. 创建 Django 模型模板
# ${NAME}.py
from django.db import models
class ${ModelName}(models.Model):
    """${Description}"""
    
    # 字段定义
    created_at = models.DateTimeField(auto_now_add=True, verbose_name='创建时间')
    updated_at = models.DateTimeField(auto_now=True, verbose_name='更新时间')
    
    class Meta:
        verbose_name = '${VerboseName}'
        verbose_name_plural = '${VerboseNamePlural}'
        ordering = ['-created_at']
        
    def __str__(self):
        return f"{self.id}"
# 以下为自动生成的代码




二、高级模板配置
1. 创建模板片段(Includes)
# File Header.py """ test includes """

2. 使用模板片段
# Python Script
#parse("File Header.py")
import os
import sys
def main():
    pass
if __name__ == '__main__':
    main()

3. 条件模板
#if (${NAME} == "models")
from django.db import models
#else
import os
import sys
#end
4. 自定义变量
#set($ModelName = ${NAME.substring(0,1).toUpperCase()} + ${NAME.substring(1)})
class ${ModelName}(models.Model):
    pass
三、模板示例集
1. Django View 模板
#parse("File Header.py")
from django.views import View
from django.http import JsonResponse
class ${ClassName}(View):
    """${Description}"""
    
    def get(self, request, *args, **kwargs):
        return JsonResponse({'status': 'ok'})
    
    def post(self, request, *args, **kwargs):
        return JsonResponse({'status': 'created'}, status=201)
2. Django Form 模板
#parse("File Header.py")
from django import forms
class ${FormName}(forms.Form):
    """${Description}"""
    
    # 字段示例
    name = forms.CharField(
        max_length=100,
        label='名称',
        widget=forms.TextInput(attrs={'class': 'form-control'})
    )
    
    def clean_name(self):
        # 自定义验证
        name = self.cleaned_data['name']
        if len(name) < 3:
            raise forms.ValidationError("名称太短")
        return name
3. Django ModelAdmin 模板
#parse("File Header.py")
from django.contrib import admin
from .models import ${ModelName}
@admin.register(${ModelName})
class ${ModelName}Admin(admin.ModelAdmin):
    """${Description}"""
    
    list_display = ('id', 'created_at')
    list_filter = ('created_at',)
    search_fields = ('id',)
    date_hierarchy = 'created_at'
    
    fieldsets = (
        (None, {
            'fields': ('created_at', 'updated_at')
        }),
    )
四、自动生成工具
1. 使用 Live Templates
# 创建 Django 模型字段模板 # Abbreviation: df # Description: Django field # Template text: $FIELD_NAME$ = models.$FIELD_TYPE$($PARAMS$)
2. 配置 Live Templates
打开 Settings > Editor > Live Templates
创建 Python 组
添加新模板:
- Abbreviation: 
df - Description: 
Django field - Template text:
 
${FIELD_NAME} = models.${FIELD_TYPE}(${PARAMS})
定义变量:
- FIELD_NAME: 
suggestVariableName() - FIELD_TYPE: 
complete() - PARAMS: 
defaultValue("") 
五、团队共享模板
1. 导出模板

2. 导入模板

3. 版本控制
# 模板文件位置 ~/.config/JetBrains/PyCharm2023.1/templates
六、模板变量全集
| 变量 | 描述 | 示例 | 
|---|---|---|
| ${NAME} | 文件名(不含扩展名) | my_view | 
| ${PACKAGE_NAME} | 包名 | myapp.views | 
| ${PROJECT_NAME} | 项目名 | MyDjangoProject | 
| ${USER} | 当前用户 | john | 
| ${DATE} | 当前日期 | 2023-07-26 | 
| ${TIME} | 当前时间 | 14:30 | 
| ${YEAR} | 当前年份 | 2023 | 
| ${MONTH} | 当前月份 | 07 | 
| ${DAY} | 当前日期 | 26 | 
| ${HOUR} | 当前小时 | 14 | 
| ${MINUTE} | 当前分钟 | 30 | 
| ${SECOND} | 当前秒数 | 45 | 
| ${PRODUCT_NAME} | IDE 名称 | PyCharm | 
| ${MONTH_NAME_FULL} | 月份全名 | July | 
| ${MONTH_NAME_SHORT} | 月份缩写 | Jul | 
| ${DS} | 美元符号 | $ | 
七、最佳实践建议
1. 模板设计原则
- 简洁性:只包含必要元素
 - 一致性:团队统一模板风格
 - 实用性:包含常用导入和结构
 - 可扩展性:使用 Includes 片段
 
2. 推荐模板结构
# 文件头
#parse("File Header.py")
# 导入区
import os
import sys
# 主逻辑
def main():
    pass
# 执行入口
if __name__ == '__main__':
    main()
3. 动态模板技巧
#if (${PACKAGE_NAME} == "models")
from django.db import models
#elseif (${PACKAGE_NAME} == "views")
from django.views import View
#end
八、常见问题解决
1. 模板不生效
- 检查文件类型匹配
 - 确认模板名称正确
 - 重启 PyCharm
 
2. 变量不解析
- 使用正确的大写格式 
${VAR} - 检查变量名拼写
 - 确保变量在作用域内
 
3. 多级目录模板
# 在特定目录创建模板 # 右键目录 > New > Edit File Templates
总结
配置 PyCharm 文件模板的完整流程:
- 打开设置:
File > Settings > Editor > File and Code Templates - 选择文件类型:在 Files 标签页选择 Python Script
 - 编写模板:使用变量和逻辑控制
 - 添加 Includes:创建可复用片段
 - 保存应用:点击 OK 保存设置
 
高级技巧:
- 使用 
#parse指令组合模板 - 通过 
#if实现条件模板 - 用 
#set定义自定义变量 - 配置 Live Templates 快速生成代码片段
 
通过合理配置模板,您可以:
- 统一代码风格
 - 减少重复工作
 - 提高开发效率
 - 确保最佳实践
 
以上就是PyCharm文件模板配置的完整指南的详细内容,更多关于PyCharm文件模板配置的资料请关注脚本之家其它相关文章!
