-1

views.py の内部には次のようなものがあります。

def confirm(request):
    item = PurchaseOrder.item_number  # I want to have the primary key in here and this is wrong 
    return HttpResponse('test successful')

models.py の内部には次のものがあります。

from django.db import models

class PurchaseOrder(models.Model):
    item_number = models.AutoField(primary_key=True)

アイテムが PurchaseOrder の主キーを呼び出すようにするにはどうすればよいですか? models.py からファイルをインポートする必要がありますか? 申し訳ありませんが、私は Django に非常に慣れていないため、これについて何も見つけることができませんでした。

4

2 に答える 2

1

チュートリアルのパート 3ではこれを実行しますが、ルックアップが必要です。

from django.shortcuts import get_object_or_404
from myapp.models import PurchaseOrder

def confirm(request, itemnum):
    item = get_object_or_404(PurchaseOrder, item_number=itemnum)
    print("Got item #: {0.item_number}".format(item)) # a test
    return HttpResponse('test successful')

次に、あなたのurls.py

from django.conf.urls import patterns, url
from myapp import views

urlpatterns = patterns('',
    # your other normal url patterns
    url(r'^(?P<itemnum>\d+)/$', views.confirm, name='confirm-page'),
)
于 2013-07-29T19:24:39.610 に答える
0

はい、モデルをビューにインポートする必要があります。

from myappname.models import PurchaseOrder

def confirm(request):
  items = PurchaseOrder.objects.all()
  return HttpResponse(' '.join([i.item_number for i in items]))

チュートリアルを実行することをお勧めします:
https://docs.djangoproject.com/en/dev/intro/tutorial01/
モデルの操作方法が説明されています。

于 2013-07-29T19:24:28.200 に答える