Django アプリケーションを開発していますが、次のエラーがあります。
'Category' object has no attribute '_state'
私のモデルは
class Blog(models.Model):
BlogMeta = models.CharField(max_length=200)
BlogTitle = models.CharField(max_length=100)
BlogContent = models.TextField()
BlogCategory = models.CharField(max_length=300)
BlogTags = models.CharField(max_length=300)
BlogDate = models.DateField()
def __unicode__(self):
return self.BlogTitle
def save(self):
self.BlogDate = datetime.datetime.now()
Categorylist = re.findall(r'\w+',self.BlogCategory)
TagList = re.findall(r'\w+', self.BlogTags)
#Get already existing tags and category
dbCategoryList = Category.objects.all()
dbTagsList = Tags.objects.all()
clisflag = False
tlisflag = False
#check if categories and tags in new blog exists previously or not.
for clis in Categorylist:
for dbclis in dbCategoryList:
if (clis == dbclis.CategoryName):
clisflag = True
break
else:
continue
if not clisflag:
createCategory = Category(clis)
createCategory.save()
clisflag = False
for tlis in TagList:
for dbtlis in dbTagsList:
if(tlis == dbtlis.TagName):
tlisflag = True
break
else:
continue
if not tlisflag:
createTag = Tags(tlis)
createTag.save()
tlisflag = False
class Tags(models.Model):
TagName = models.CharField(max_length=20)
TagDesc = models.TextField(null=True)
def __unicode__(self):
return self.TagName
def __init__(self,name):
self.TagName = name
self.TagDesc = ""
class Category(models.Model):
CategoryName = models.CharField(max_length=20)
CategoryDesc = models.TextField(null=True)
def __unicode__(self):
return self.CategoryName
def __init__(self, name):
self.CategoryName = name
self.CategoryDesc = ""
新しいブログ投稿では、カテゴリはカンマ区切りの値として取得され、新しいカテゴリが検出されるとデータベースに追加されます。タグについても同様です。
このことについてはよくわかり_state
ません。正しい方向に向けてください。どうもありがとう!