معرفی شرکت ها


django-xvalidate-0.4.2


Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر

توضیحات

Cross-field validators within a Django model
ویژگی مقدار
سیستم عامل -
نام فایل django-xvalidate-0.4.2
نام django-xvalidate
نسخه کتابخانه 0.4.2
نگهدارنده []
ایمیل نگهدارنده []
نویسنده Suriya Subramanian
ایمیل نویسنده suriya@alumni.cs.utexas.edu
آدرس صفحه اصلی https://www.github.com/suriya/django-xvalidate
آدرس اینترنتی https://pypi.org/project/django-xvalidate/
مجوز MIT License
================ django-xvalidate ================ .. image:: https://travis-ci.org/suriya/django-xvalidate.svg?branch=master :target: https://travis-ci.org/suriya/django-xvalidate .. image:: https://coveralls.io/repos/suriya/django-xvalidate/badge.svg?branch=master&service=github :target: https://coveralls.io/github/suriya/django-xvalidate?branch=master .. image:: https://img.shields.io/pypi/v/django-xvalidate.svg :target: https://pypi.python.org/pypi/django-xvalidate :alt: Latest PyPI version django-xvalidate allows you to declare cross-field validators within a Django model. As an example, consider a Django model named :code:`Event`. .. code:: python from django.db import models class Event(models.Model): title = models.CharField(max_length=255) start_date = models.DateField() end_date = models.DateField() django-xvalidate allows you to declare that the start date precedes the end date as follows: .. code:: python from django.db import models from xvalidate import XValidatedModel, XLe class Event(XValidatedModel, models.Model): title = models.CharField(max_length=255) start_date = models.DateField() end_date = models.DateField() class XVMeta(XValidatedModel.XVMeta): spec = [ XLe('start_date', 'end_date').message( 'The start date should precede the end date') ] :code:`XValidatedModel` ensures that this specification is maintained invoking :code:`Event.clean()` and raises :code:`ValidationError` as appropriate. Why use django-xvalidate? ------------------------- django-xvalidate allows you to specify how to validate your model instances in a more declarative manner than writing imperative code within your :code:`clean()` methods. Without django-xvalidate you would have to implement the above example as .. code:: python def clean(self): super(Event, self).clean() if (self.start_date is not None) and (self.end_date is not None): if (self.end_date < self.start_date): raise ValidationError('The start date should precede the end date') With a more declarative format we have the option at some point in the future to automate the creation of test data that passes (or fails) validation. django-xvalidate comes some operator overloading that brings syntactic sugar to your declarations making them very easy to read. For instance, you could specify: .. code:: python ((XF('end_date') - 'start_date') > datetime.timedelta(days=4)).message( 'Event should last at least 5 days' ) django-xvalidate also allows the use of Django's double-underscore (`__`) syntax to dereference related objects, enabling succinct definitions such as the following .. code:: python (XF('registration_date') <= 'event__end_date').message( 'Must register before the event ends')


نحوه نصب


نصب پکیج whl django-xvalidate-0.4.2:

    pip install django-xvalidate-0.4.2.whl


نصب پکیج tar.gz django-xvalidate-0.4.2:

    pip install django-xvalidate-0.4.2.tar.gz