0
我剛剛開始一些django,我有一點麻煩,使這項工作。 我只想創建一個組,其中有成員和那些成員創建主題。現在,我在掙扎的地方是我不知道如何將主題添加到組中。Django的數據庫模型is_valid
我如何通過showmessage(如果它是正確的)並將該主題與組相關聯來製作主題。試圖在人與人之間進行一些對話。以後我可以將人添加到對話中。 已經有些日子,我卡住幫助我!
我查看
def showcreate(request):
p = Group.objects.all()
return render(request,'messages/showcreate/showcreate.html',{ 'p':p})
def show(request, item):
items = item
p = Group.objects.all()
test='/show/'+item
print "showing item: 12, "+item
if request.method == 'POST':
form = showmessage(request.POST)
if form.is_valid():
print "here too : "+request.POST['q'] ***** This is me trying to make it work***
storyi = form.save(commit=False)
storyi.Topics.user = request.user
storyi.Topics.wichgroupe = request.POST['q']
storyi.save()
return HttpResponseRedirect(test)
else:
form=StoryForm()
return render(request,'messages/show/show.html',{ 'p':p,'item':items,'form':form})
網址
url(r'^show/(?P<item>\w+)', 'djangoproject.home.views.show', name='show'),
url(r'^/showcreate', 'djangoproject.home.views.showcreate' ,name='showcreate'),
型號
class Topic(models.Model):
user = models.ForeignKey(User)
postit = models.TextField(max_length=300)
comment = models.TextField(max_length=300)
createdat = models.DateTimeField(default=timezone.now)
wichgroupe = models.TextField(max_length=300, default="all")
def timer(self):
return self.createdat
def __str__(self): # __unicode__ on Python 2
return self.postit
class Group(models.Model):
name = models.CharField(max_length=100)
members = models.ManyToManyField(User)
Topics = models.ManyToManyField(Topic)
def __str__(self): # __unicode__ on Python 2
return self.name
形式:
class StoryForm(ModelForm):
class Meta:
model = Topic
exclude =('user','createdat','comment','wichgroupe')
class Grouping(ModelForm):
class Meta:
model = Group
exclude =('Topics','members')
class showmessage(ModelForm):
class Meta:
model = Group
exclude=('user','createdat','comment','wichgroupe','Topics','members','name')
哇,這是中國人給我的男人。哈哈:D 我的問題確實是它沒有在組中。我會盡力遵循該文檔。我已經閱讀過那篇文章,但並不理解它:/我沒有關於主題的ID主鍵,這是一個問題嗎?既沒有外鍵?也許這些可以幫助 – nokker
「id」主鍵在模型上自動設置,無需添加。既然你有一個M2M關係,Django負責創建一個帶有外鍵的「中間」表,以表示你的模型。 – dylrei
對不起,但我仍然不知道它們如何自動連接:/什麼是group_set?這是一個功能? (看着內聯工廠的東西,但這並沒有遠) – nokker