Django Simplify предоставляет Ruby на функциях командной строки, моделей и вспомогательных функций, чтобы вы могли сосредоточиться на разработке и удаляет боль от повторяющихся действий.
Django-Simplify может быть установлен через PIP.
$ pip install django-simplifyЗатем просто добавьте упростите в свой stected_apps.
1. create_app
$ python manage.py create_app < app_name >2. Create_Model
Создает модель и их соответствующие поля. Следующие типы карт в соответствующих модельных полях Django. Это также добавит приложение и администратору Django.
$ python manage.py create_app < app_name > < model_name > field_name:type field_name:type ...$ python manage.py create_app member Member first_name:text last_name:text age:intбудет генерировать следующий код в файле Memorn/Models.py
class Member ( models . Model ):
first_name = models . CharField ( max_length = 50 )
last_name = models . CharField ( max_length = 50 )
age = models . IntegerField ( default = 0 )
created_at = models . DateTimeField ( auto_now_add = True )
updated_at = models . DateTimeField ( auto_now = True )
def __str__ ( self ):
return self . first_nameПримечание
Команда использует первое указанное поле в качестве по умолчанию __str__.
Указание ForeignKey, Onetoonefield или Mantotomanyfield довольно просто. Просто добавьте = <viled_model>. Смотрите пример
$ python manage.py create_app < app_name > < model_name > field_name:type=related_model
# an example
# if the related model is in the same models.py file, specify it as app_name.Model
$ python manage.py create_app author Author name:char books:fk=Book # or
$ python manage.py create_app author Author name:char books:fk=author.Book
# if in a different app. (say book model)
# obviously you should be able to substitute fk with m2m, o2o, 121
$ python manage.py create_app author Author name:char books:fk=book.BookСоздат следующее
class Author ( models . Model ):
name = models . CharField ( max_length = 50 )
books = models . ForeignKey ( 'book.Book' , on_delete = models . CASCADE )
created_at = models . DateTimeField ( auto_now_add = True )
updated_at = models . DateTimeField ( auto_now = True )
def __str__ ( self ):
return self . name3. create_view
Создает представление, генерируйте его соответствующий шаблон и добавляет путь в файл urls.py
$ python manage.py create_view < app_name > < view_name > $ python manage.py create_view member MemberDetail
Helper models
# ###############
- simplify.utils.TimeBasedModel
- Provides the ` created_at ` and ` updated_at ` fields for timestamp
- simplify.utils.NamedTimeBasedModel
- Provides the ` name ` , ` created_at ` and ` updated_at ` fields.
- simplify.utils.AlphaNumericFilterAdmin
- when subclassed, it allows the items to be filtered alphabetically by either A-Z or 0-9
- ** Note ** : for this to work, you must specify values for `alphanumeric_filter` in the model admin.
Usage
# #####
.. code-block:: python
# models.py
from simplify.utils import TimeBasedModel, NamedTimeBasedModel
class MyModel(TimeBasedModel):
extra_fields = ....
.. code-block:: python
# admin.py
from simplify.utils import AlphaNumericFilterAdmin
class MemberAdmin(AlphaNumericFilterAdmin):
alphanumeric_filter = [ " first_name " , " last_name " , ' age ' ] # this part is what creates the filter
list_filter = [ ' age ' ]
list_display = [ ' first_name ' , ' last_name ' ,]Примечание
Это все еще в режиме ранней разработки. могут быть ошибки. Он работает нормально, если вы пишете хороший код и следите за стилем разработки Django. Пожалуйста, разделите проект, чтобы внести вклад
Я хотел бы сказать большое спасибо Богу, без которого это было бы невозможно. Я также хотел бы поблагодарить всех, кто имеет и будет способствовать этому в будущем.