0
save()メソッド内でモデルの名前を取得したいと思います。私はこの行を修正したいsave()メソッドのdjangoモデル名
self.slug = create_slug(self.model_object, self.slug)
ここで私はモデル名self.model_name
を取得する必要があります。ここでmodel course
はbasemodel
を継承しましたが、model
という名前をcourse
という名前で取得する必要があります。どうやってやるの?誰か助けてください。
class BaseModel(models.Model):
slug = models.SlugField(unique=True, max_length=500)
def save(self, *args, **kwargs):
if self._state.adding == True:
if not self.slug:
self.slug = create_slug(self.model_object, self.slug)
return super(BaseModel, self).save(*args, **kwargs)
class Meta:
abstract = True
class Course(BaseModel):
title = models.CharField(max_length=128)
class Meta:
db_table = "course"
'はstr' はオブジェクトが属性 'オブジェクト' を持っていない
__class__
魔法のプロパティを使用することによって、これを達成することができます。私はこのエラーがあります。そのモデルを文字列として取ります。 – tstudent@tstudent貼り付けたコードに 'objects'の言及はありません。だから私はそれを説明することができませんでした。あなたの質問を更新するか、別の質問を作成してください。 self .__ class __.__ name__の代わりに –
。私は自分自身を試した.__ class__とその仕事。ありがとう.. – tstudent