示例#1
0
 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())
示例#2
0
 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))
示例#3
0
    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))
示例#4
0
    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})
示例#5
0
 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())
示例#6
0
    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})
示例#7
0
 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())
示例#8
0
 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
     })
示例#9
0
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()
示例#10
0
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()
示例#11
0
    def test_validators(self):
        BookForm = model_form(Book)

        form = BookForm()
        self.assertEqual(form.data, {
            'id': None,
            'title': None,
            'content': None
        })
        self.assertFalse(form.validate())
示例#12
0
    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')
示例#13
0
    def test_input(self):
        BookForm = model_form(Book, only=["title"])

        form = BookForm(title='Book title')
        self.assertEqual(form.data, {'title': 'Book title'})