def get_form(self, adding=False): return model_form(self.model, BaseForm, only=self.only, exclude=self.exclude, field_args=self.field_args, converter=AdminModelConverter())
def get_form(self, adding=False): return model_form(self.model, BaseForm, only=self.only, exclude=self.exclude, field_args=self.field_args, converter=AdminModelConverter(self))
def test_field_types(self): BookForm = model_form(Book) form = BookForm() self.assertTrue(isinstance(form.id, f.IntegerField)) self.assertTrue(isinstance(form.title, f.StringField)) self.assertTrue(isinstance(form.content, f.TextAreaField))
def test_only(self): BookForm = model_form(Book, only=["title", "content"]) form = BookForm() self.assertEqual(list(form._fields.keys()), ["title", "content"]) self.assertNotEqual(list(form._fields.keys()), ['id', 'title', 'content']) self.assertEqual(form.data, {'title': None, "content": None})
def test_book_form_input(self): BookForm = model_form(Book, exclude=['id']) form = BookForm(title="Book1", content="Content1") self.assertEqual(form.data, { 'title': 'Book1', 'content': 'Content1', }) self.assertTrue(form.validate())
def test_exclude(self): BookForm = model_form(Book, exclude=["id", "content"]) form = BookForm() self.assertEqual(list(form._fields.keys()), ['title']) self.assertNotEqual(list(form._fields.keys()), ['id', 'title', 'content']) self.assertEqual(form.data, {'title': None})
def get_form(self, adding=False): allow_pk = adding and self.allow_pk() return model_form(self.model, BaseForm, only=self.only, exclude=self.exclude, field_args=self.field_args, converter=AdminModelConverter())
def test_book_form(self): BookForm = model_form(Book) form = BookForm() self.assertEqual(list(form._fields.keys()), ['id', 'title', 'content']) self.assertEqual(form.data, { 'id': None, 'title': None, 'content': None })
async def test_book_form_edit(): await Tortoise.init(db_url="sqlite://test_db.sqlite3", modules={"models": ["__main__"]}) book = await Book.get(id=1) BookForm = model_form(Book, exclude=['id']) form = BookForm(title="Book2", content="Content2") form.populate_obj(book) await book.save()
async def test_book_form_create(): await Tortoise.init(db_url="sqlite://test_db.sqlite3", modules={"models": ["__main__"]}) BookForm = model_form(Book, exclude=['id']) form = BookForm(title="Book1", content="Content1") instance = Book() form.populate_obj(instance) await instance.save()
def test_validators(self): BookForm = model_form(Book) form = BookForm() self.assertEqual(form.data, { 'id': None, 'title': None, 'content': None }) self.assertFalse(form.validate())
def test_new_label_field_args(self): BookForm = model_form( Book, only=["title"], field_args={'title': { 'label': 'Your new label' }}) form = BookForm() for field in form: self.assertEqual(field.label.text, 'Your new label') self.assertNotEqual(field.label.text, 'Title')
def test_input(self): BookForm = model_form(Book, only=["title"]) form = BookForm(title='Book title') self.assertEqual(form.data, {'title': 'Book title'})