Django Simplify proporciona rubí en las funcionalidades de la línea de comandos tipo rieles, modelos y funciones auxiliares para que pueda centrarse en el desarrollo y eliminar el dolor de repetir acciones frecuentes.
Django-Splify se puede instalar a través de PIP.
$ pip install django-simplifyLuego, simplemente agregue Simplify a sus instalados_apps.
1. Create_App
$ python manage.py create_app < app_name >2. Create_model
Crea un modelo y sus respectivos campos. Los siguientes tipos se mapean a los respectivos campos modelo Django. También agregará la aplicación al administrador de 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:intgenerará el siguiente código en el archivo member/modelos.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_nameNota
El comando usa el primer campo especificado como el valor predeterminado __STR__.
Especificar extranjeros, Onetoonefield o Manytomanyfield es bastante fácil. Simplemente agregue an = <Relation_model>. Ver ejemplo
$ 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.Bookcreará lo siguiente
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
Crea una vista, genere su plantilla respectiva y agrega la ruta en el archivo de 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 ' ,]Nota
Esto todavía está en modo de desarrollo temprano. podría tener errores. Funciona bien si escribe un buen código y sigue el estilo de desarrollo Django. POR FAVOR BUSCAR EL PROYECTO para hacer contribuciones
Me gustaría decir un gran agradecimiento a Dios sin el cual esto no sería posible. También me gustaría agradecer a todos los que tienen y contribuirán a esto en el futuro.