모델을 기반으로 장고에서 양식을 작성하려고합니다. 이 양식에는 기본적으로 2 개의 정보가 포함되어야합니다. 검토중인 제품에 대한 검토 텍스트와 태그입니다. 사용자 인터페이스가 향상되어 데이터베이스에 이미 존재하는 태그를 양식에 표시해야 사용자를 확인란으로 사용할 수 있습니다. 그러나이 목록에없는 다른 태그를 포함하려는 경우 가능합니다. 새 태그 용 필드는 텍스트 필드입니다. 삽입 된 새 태그는 쉼표로 구분되며 태그 관리에는 taggit이 사용됩니다. 선물 태그의 수는 제품에 따라 차이가 확률 적 요소가 검토되고 있지만 최소 0이고 최대 값은양식의 필드 사용자 정의
이 10. 검토를 위해 모델입니다 :
class Review(models.Model):
user = models.ForeignKey(User, related_name="user_blog")
tag = TaggableManager()
product = models.ForeignKey(Product)
review_text = models.TextField()
created = models.DateTimeField(auto_now=True, auto_now_add=False)
updated = models.DateTimeField(auto_now=True, auto_now_add=True)
hashtag = models.ForeignKey(Hashtag)
def __unicode__(self):
return u'%s' % self.review_text
def getTags(prodid):
return Review.objects.filter(product=prodid)
이 양식 I는 생성 :
<form class="form-inline">
<strong><h3>Revise este produto</h3></strong><br>
{% for tag in tags %}
<label class="checkbox">
<input type="checkbox" value=""> #Ótimo
</label>
{% endfor %}
<br/>
<p> </p>
<label>Envie outras hashtags</label> <br/>
<input type="text" class="span3" placeholder="exemplo1, exemplo2">
<br />
<p> </p>
<label>Deixe sua opinião (opcional)</label> <br/>
<textarea name="Text1" cols="80" class="span3" rows="5" placeholder="Digite sua opinião aqui"></textarea>
<br/>
<p> </p>
<button class="btn btn-primary" type="submit"><h4>Pronto!</h4></button>
</form>
내가 형태를 구현하기 위해 훨씬 더 쉽게하기 위해 소리 장고 양식에 대해 읽을 수 있지만 내가 HTML에 직접 여기처럼 내가 태그 필드를 사용자 정의하는 방법을 몰라, 어느 쪽도 방식을 변경할 수 없습니다 필드 레이블 (레이블은 포르투갈어, 모든 서버 측은 영어로되어 있습니다).
form.py를 구현하려했지만 "review_text"의 레이블이 변경되지 않았으며 이전에 말했듯이 양식의 데이터베이스에 이미있는 모든 태그를 표시하는 방법을 알지 못합니다. 사용자가 모든 체크 박스를 그룹화하고 새 태그 필드와 연결하여이를 databse에 저장하십시오.
def single_product(request, slug):
product = get_object_or_404(Product, slug=slug)
prod = Product.objects.get(slug=slug)
reviews = Review.objects.get(product=prod.id)
reviewmatrix = {}
i = 0
try:
for rev in reviews:
reviewmatrix[str(i)] = [[review.review_text]]
u = User.objects.get(username=rev.user)
i = i + 1
except:
u = User.objects.get(username=reviews.user)
reviewmatrix[str(i)] = [[reviews.review_text]]
if request.method=="POST":
form = responseForm(request.POST, review=review)
if form.is_valid():
response = form.save()
msg = 'Obrigado por avaliar ' + prod.name
return render(request, 'product_detail.html', {'prod':prod, 'reviews':reviews, 'user':u.first_name, 'msg':msg})
else:
form = ReviewForm()
args = {}
args.update(csrf(request))
return render(request, 'product_detail.html', {'prod':prod, 'reviews':reviews, 'user':u.first_name, 'form':form})
감사합니다. 그러나 그것은 내가 예상 한 것이 아닙니다. 데이터 구조를 가진 솔루션을 찾고 있습니다. html과 forms.py로 만든 양식을 연결하는 방법은 무엇입니까? –