确认

  • [X] 我的版本是最新版本, 我的版本号与 version 相同, 并且项目里无依赖冲突
  • [X] 我已经在 issue 中搜索过, 确认问题没有被提出过
  • [X] 我已经修改标题, 将标题中的 描述 替换为遇到的问题

功能改进

在使用自定义模板时,我使用下面的代码配置了我的DTO文件名,模板路径,以及包名称,在这里配置后我想要objectMap 中的 package 自动添加一个键值对,比如以文件名为key{”DTO“:”基础包路径 + 包名称“},这样就能在模板中直接使用${package.DTO}

injectionConfig(builder -> {
      builder.customFile(customFileBuilder -> {
          customFileBuilder.fileName("DTO.java")
                  .templatePath("\\templates\\vm\\java\\dto.java.vm")
                  .packageName("model.dto")
                  .enableFileOverride()
          ;
      });
  })

我想参照官方模板的例子

## ----------  Entity包路径  ----------
package ${package.Entity};
## ----------  Service包路径  ----------
package ${package.Service};

然而 objectMap 中的 package 只有这些 MyBatis-Plus [功能改进]: 描述自定义模板比如DTO 我先在的解决方式时在dto模板中这样写,model.dto这个东西我感觉配置了两次

package ${package.Parent}.model.dto;

参考资料

No response

Comment From: qiaozhi-4

类名称也是一样,自动往objectMap里面添加一个【文件名Name】我设置的文件名时DTO.Java,往objectMap添加的就是{”DTOName“:实体名+"DTO"} 我现在是手动在injectionConfig-》beforeOutputFile里面添加 objectMap.put("DTOName", tableInfo.getEntityName() + "DTO");