开发者

PyCharm文件模板配置的完整指南

目录
  • 一、完整配置流程
    • 1. 打开模板设置
    • 2. 配置全局模板
    • 3. 创建 python 文件模板
    • 4. 添加自定义变量
    • 5. 创建 Django 模型模板
  • 二、高级模板配置
    • 1. 创建模板片段(Includes)
    • 2. 使用模板片段
    • 3. 条件模板
    • 4. 自定义变量
  • 三、模板示例集
    • 1. Django View 模板
    • 2. Django Form 模板
    • 3. Django ModelAdmin 模板
  • 四、自动生成工具
    • 1. 使用 Live Templates
    • 2. 配置 Live Templates
  • 五、团队共享模板
    • 1. 导出模板
    • 2. 导入模板
    • 3. 版本控制
  • 六、模板变量全集
    • 七、最佳实践建议
      • 1. 模板设计原则
      • 2. 推荐模板结构
      • 3. 动态模板技巧
    • 八、常见问题解决
      • 1. 模板不生效
      • 2. 变量不解析
      • 3. 多级目录模板
    • 总结

      实现创建文件时自动添加自定义模板

      一、完整配置流程

      1. 打开模板设置

      PyCharm文件模板配置的完整指南

      PyCharm文件模板配置的完整指南

      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()
      

      PyCharm文件模板配置的完整指南

      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}"
      
      # 以下为自动生成的代码
      

      PyCharm文件模板配置的完整指南

      PyCharm文件模板配置的完整指南

      PyCharm文件模板配置的完整指南

      PyCharm文件模板配置的完整指南

      二、高级模板配置

      1. 创建模板片段(Includes)

      # File Header.py
      """
      test includes
      """
      

      PyCharm文件模板配置的完整指南

      2. 使用模板片段

      # Python Script
      #parse("File Header.py")
      
      import os
      import sys
      
      def main():
          pass
      
      if __name__ == '__main__':
          main()
      

      PyCharm文件模板配置的完整指南

      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("名称太短")
              retpythonurn 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. 导出模板

      PyCharm文件模板配置的完整指南

      2. 导入模板

      PyCharm文件模板配置的完整指南

      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 名称PyCEWlClharm
      ${MONTH_NAME_FULL}月份全名July
      ${MONTH_NAME_SHORT}月份缩写Jujsl
      ${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 文件模板的完整流程:

      1. 打开设置File > Settings > Editor > File and Code Templates
      2. 选择文件类型:在 Files 标签页选择 Python Script
      3. 编写模板:使用变量和逻辑控制
      4. 添加 Includes:创建可复用片段
      5. 保存应用:点击 OK 保存设置

      高级技巧:

      • 使用 #parse 指令组合模板
      • 通过 #if 实现条件模板
      • #set 定义自定义变量
      • 配置 Live Templates 快速生成代码片段

      通过合理配置模板,您可以:

      • 统一代码风格
      • 减少重复工作
      • 提高开发效率
      • 确保最佳实践

      以上就是PyCharm文件模板配置的完整指南的详细内容,更多关于PyCharm文件模板配置的资料请关注编程客栈(www.devze.com)其它相关文章!

      0

      上一篇:

      下一篇:

      精彩评论

      暂无评论...
      验证码 换一张
      取 消

      最新开发

      开发排行榜