Я пытаюсь добавить атрибут к объекту, который я создал в оболочке Django, чтобы создать некоторые запросы, но он говорит, что объект не является пригодным для использования.
Я пытаюсь сделать проект на django Я успешно перенес модель и когда я хочу добавить номер счета к моим объектам checkaccount, он говорит, что объект не итерируемый, все остальное работает правильно (как я тестировал)
это models.py:
from django.db import models
# Create your models here.
class Bank(models.Model):
name = models.CharField(max_length=300)
def __str__(self) -> str:
return self.name
class BankAccount(models.Model):
bank = models.ForeignKey(Bank, on_delete=models.CASCADE)
balance = models.DecimalField(max_digits=18, decimal_places=2)
account_number = models.IntegerField()
types = (
('c', 'checking account'),
('s', 'savings account'),
)
type_selection = models.CharField('account type', max_length=1, choices=types )
def __str__(self) -> str:
return str(self.account_number)
class CheckingAccount(models.Model):
balance = models.DecimalField(max_digits=18, decimal_places=2)
date_created = models.DateField()
last_transaction = models.DateField()
account_number = models.ManyToManyField(BankAccount)
def __str__(self) -> str:
return self.account_number
def deposit(cash, self):
self.balance += cash
def check_balance(self):
return self.balance
def withdrawal(self, cash):
self.balance -= cash
class SavingsAccount(models.Model):
balance = models.DecimalField(max_digits=18, decimal_places=2)
date_created = models.DateField()
account_number = models.ManyToManyField(BankAccount)
def __str__(self) -> str:
return self.account_number
def deposit(cash, self):
self.balance += cash
def check_balance(self):
return self.balance
вот вход и выход оболочки:
>>> acC.account_number.set(ac)
Traceback (most recent call last):
File "<console>", line 1, in <module>
File "C:\Users\Armin\AppData\Local\Programs\Python\Python39\lib\site-packages\django\db\models\fields\related_descriptors.py", line 992, in set
objs = tuple(objs)
TypeError: 'BankAccount' object is not iterable
любая помощь приветствуется =)