يوفر 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:intسيقوم بإنشاء الكود التالي في ملف العضو/الموديلات
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 أو ManyTomanyfield. فقط أضف an = <selped_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. من فضلك تتفوق على المشروع لتقديم مساهمات
أود أن أقول شكرًا كبيرًا لله الذي بدونه لن يكون هذا ممكنًا. أود أيضًا أن أقول شكراً لكل من لديه وسيساهم في ذلك في المستقبل.