0
views.pyとmodels.pyの関連部分を以下に示します。潜在的に新しいクライアントに新しい注文を登録しようとすると、タイトルにエラーが表示されます。私はnew_order = Order(client = client_used, kassa = cd['kassa'], no_boxes = cd['no_boxes'], pub_date = timezone.now(), notes = cd['notes'])
行を削除しようとしましたが、それは問題を解決しませんでした。キーワード 'name'をフィールドに解決できません。クライアント、クライアントID、配信済み、ID、kassa、no_boxes、notes、pub_date
私はDjangoバージョン1.10とPython 2.7.10を使用します。前もって感謝します。トレースバックで書かれ
Views.py
def addclient(request):
if request.method == 'POST':
form = ClientForm(request.POST)
if form.is_valid():
cd = form.cleaned_data
if Order.objects.filter(name = cd['name']).exists():
client_used = Order.objects.get(name = cd['name'])
else:
client_used = Client(name = cd['name'], address = cd['address'], city = cd['city'], date_created=timezone.now())
client_used.save()
new_order = Order(client = client_used, kassa = cd['kassa'], no_boxes = cd['no_boxes'], pub_date = timezone.now(), notes = cd['notes'])
new_order.save()
# redirect to a new URL:
return index(request)
# if a GET (or any other method) we'll create a blank form
else:
form = ClientForm()
return render(request, 'clients/addclient.html', {'form': form})
Models.py
class Client(models.Model):
name = models.CharField(max_length=200)
address = models.CharField(max_length=200)
city = models.CharField(max_length=200)
date_created = models.DateTimeField('date created')
def __str__(self):
return self.name
class Order(models.Model):
client = models.ForeignKey(Client, on_delete=models.CASCADE)
kassa = models.CharField(max_length=200)
no_boxes = models.IntegerField(default=0)
pub_date = models.DateTimeField('date published')
delivered = models.NullBooleanField(default=False)
notes = models.CharField(max_length=200)
def __str__(self):
return "Order #" + str(self.id)
ありがとう:ここ
は間違って行です。それは確かに 'クライアント'でなければなりません。 – bytefast
@bytefastようこそ –