def file_directory_path(instance, filename):
filename_tr = filename
name = os.path.splitext(filename)[0]
ext = os.path.splitext(filename)[1]
filename_tr = str(instance.pk) + "_" + name + ext
return 'files/%s' % (filename_tr)
此处instance.pk
在尚未创建模型对象时设置为None
,是否有办法在创建后以某种方式获取id?或唯一的方法是在save_model
处理程序中重新命名它?
答案 0 :(得分:1)
如果你想在创建对象后获取实例id,你可以在django中使用post_save信号作为你的func。 https://docs.djangoproject.com/en/2.0/ref/signals/#post-save