实现创建文件时自动添加自定义模板
一、完整配置流程
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文件模板配置的资料请关注代码网其它相关文章!
发表评论