0

だから、私はDjangoでバータブアプリケーションに取り組んでいます.タブにデータを挿入しようとすると、エラーが発生します:

/tabs/345/add/Caipirinha/ の ValueError

基数 10 の int() の無効なリテラル: '345/add/Caipirinha'

Stackoverflow で以前に提供されたソリューションのいくつかを試しましたが、成功しませんでした。

ここに私のファイルのいくつかがあります:

models.py

class Tab(models.Model):
  number = models.IntegerField()
  name = models.CharField(max_length='50')
  tabdate = models.DateTimeField('date created')
  consumed = models.ManyToManyField(Product, through='ConsumedRelation')
  def __unicode__(self):
  return self.name


class ConsumedRelation(models.Model):
  tab = models.ForeignKey(Tab)
  product = models.ForeignKey(Product)
  count = models.PositiveIntegerField(blank=True, null=True, default=1)
  def __unicode__(self):
    return str(self.tab) + " | " + str(self.count) + " " + str(self.product)

ビュー.py

def addproduct(request, tabnumber, product):
  tabnumber = Tab.objects.get(number=number)
  productadd = Product.objects.get(name=str(product))
  add = ConsumedRelation.objects.create(product=productadd, tab=tabnumber, count=1)
  add.save()
  context = {'tabnumber': tabnumber, 'product': productadd}
  return render_to_response('addproduct.html', context,     context_instance=RequestContext(request))

addproduct.html

{% for product in productlist %}
<a href="add/{{ product }}/"<li>{{ product }}</li></a>
{% endfor %}

urls.py

url(r'^tabs/add/(?P<tabnumber>\d)/(?P<product>\d)/$', 'barcomandas.views.addproduct'),

助けてくれてありがとう!

4

1 に答える 1

1

{% url %}Django が適切な URL を生成するように、テンプレートで を使用する必要があります。

<a href="{% url 'barcomandas.views.addproduct' tabnumber=sometabnumber product=product %}"<li>{{ product }}</li></a>
于 2012-09-01T17:52:43.570 に答える