django simplify
1.0.0
Django Simplify는 Ruby on Rails와 같은 명령 줄 기능, 모델 및 도우미 기능을 제공하므로 개발에 집중하고 빈번한 행동의 고통을 제거 할 수 있습니다.
Django-Simplify는 PIP를 통해 설치할 수 있습니다.
$ pip install django-simplify그런 다음 installed_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:intmember/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__ 기본값으로 사용합니다.
외국 키, OnetoOnefield 또는 MantoManyfield를 지정하는 것은 매우 쉽습니다. an = <관련_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 스타일의 개발을 따르면 잘 작동합니다. 기여를하기 위해 프로젝트를 포크하십시오
나는 이것이 불가능할 것없이 하나님 께 큰 감사를 말하고 싶습니다. 나는 또한 앞으로 이것에 기여하고 기여할 모든 사람에게 감사의 말을 전하고 싶습니다.