O Django Simplify fornece funcionalidades, modelos e funções auxiliares do tipo Ruby On Rails, para que você possa se concentrar no desenvolvimento e remover a dor de repetir ações frequentes.
Django-simplify pode ser instalado via PIP.
$ pip install django-simplifyEm seguida, basta adicionar simplificar ao seu Installed_apps.
1. Create_app
$ python manage.py create_app < app_name >2. Create_model
Cria um modelo e seus respectivos campos. Os seguintes tipos mapas para os respectivos campos do modelo Django. Também adicionará o aplicativo ao administrador do 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:intgerará o seguinte código no arquivo membro/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_nameObservação
O comando usa o primeiro campo especificado como o __STR__ padrão.
Especificar ForeignKey, Onetoonefield ou ManyTomanyfield é bastante fácil. Basta adicionar um = <relacionado_model>. Veja o exemplo
$ 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.Bookvai criar o seguinte
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
Cria uma visão, gera seu respectivo modelo e adiciona o caminho no arquivo 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 ' ,]Observação
Isso ainda está no modo de desenvolvimento inicial. pode ter bugs. Funciona bem se você escrever um bom código e seguir o estilo de desenvolvimento Django. Por favor, lance o projeto para fazer contribuições
Eu gostaria de agradecer a Deus sem o qual isso não seria possível. Eu também gostaria de agradecer a todos que têm e contribuirão com isso no futuro.