اذهب إلى المحتوى

Abdollahi Mohammed

الأعضاء
  • المساهمات

    35
  • تاريخ الانضمام

  • تاريخ آخر زيارة

كل منشورات العضو Abdollahi Mohammed

  1. نحن هنا لا نحل الواجبات مباشرة يمكنك البدأ في كتابة الشفرة البرمجية ونحن سنكون سعداء بمساعدتك
  2. ال forms.ModelForm هو نموذج يتم إنشاؤه تلقائيًا بناءً على model معين مثلا دعنا نقول أن لديك نموذج مقال يشبه هذا class Article(models.Model): DRAFT = 'D' PUBLISHED = 'P' STATUS = ( (DRAFT, 'Draft'), (PUBLISHED, 'Published'), ) title = models.CharField(max_length=255) content = models.TextField(max_length=4000) status = models.CharField(max_length=1, choices=STATUS, default=DRAFT) create_date = models.DateTimeField(auto_now_add=True) update_date = models.DateTimeField(blank=True, null=True) في ملف Forms.py الخاص بك ، يمكنك إنشاء نماذجك تلقائيًا مثل ذلك from django import forms from . import models class ArticleForm(forms.ModelForm): class Meta: model = models.Article fields = ['title', 'content', 'status'] يجب أن يحتوي modelForm على modelللعمل منه ، في المثال أعلاه يمكنك رؤية هذا السطر "model = Models.Article" # هنا نحدد النموذج الذي سيعتمد عليه هذا النموذج اما النوع الثاني forms.Form هي أشكال مستقلة عن model ولا تتفاعل بشكل مباشر معه و هذا مثال form للبحث from django import forms class SearchForm(forms.Form): search_term = forms.CharField(required=False, max_length=50) كما ترى ، فإن نموذج البحث أعلاه ليس مرتبطًا بنموذج معين ، فهو مستقل وهدفه الوحيد هو إنشاء حقول أو حقل إذا كان لديك حقل واحد فقط مثل نموذج البحث أعلاه والذي سيتم تقديمه للمستخدم النهائي. يتمثل الاختلاف الرئيسي بين الاثنين في أنه في النماذج التي يتم إنشاؤها من النماذج ، يجب علينا تحديد النموذج الذي سيتم استخدامه لإنشاء النموذج الخاص بنا.
  3. لم يتم التعرف على الملف أو المسار تأكد أولا من اسم الملف هل هو eNv أم env ثانيا تأكد أنك في المسار أو المكان الصحيح الذي به البيئة الافتراضية اكتب الأمر ls لترى الملفات الموجودة مسارك الحالي
  4. حاول استخدام الاسلوب FOO__in=... جرب الكود Post.objects.filter(tags__in=[<id1>]) يمكن ايضا ان تجرب هذا الكود Post.objects.filter(tags_id=self.kwargs.get('pk'))
  5. انت لا تحتاها ليعمل المشروع ولكنها ضرورية جدا اذا لم تستخدمها فان جميع المكتبات التي تقوم بتثبيتها تكون مثبتة في الجهاز بشكل عام وهذا سيسبب لك الكثير من المشاكل اما اذا استخدمت ال virtualenv فان المكتبات تكون مثبتة في هذه البيئه الافتراضية فقط وهذا سيساعدك كثيرا في التحكم في الاصدارات وما الى ذلك
  6. ال view عبارة عن ملف من ملفات التطبيق الملفات الاساسية في اي تطبيق جانقو هي: admin apps models tests views ويمكن اضافة ملفات اخري ك forms urls وغيرها
  7. بشكل اساسي التطبيقات تتكون من جزأين: front-end وهي الواجهة الامامية back-end وهي الواجهة الخلفية بالنسية front-end تتغير بتغير platform كالاندوريد والايفون و هكذا اما ال back-end تكون ثابته تخيل معي فيشة الكهرباء ما خلف الفيشة هو ال back-end اذا الفيشة والكهرباء ثابتين والمتغير هو الشئ المستخدم كالهاتف مثلا اذا استخدمت الفيشة لشحن الهاتف واللاب مثلا اذا استخدمت الفيشة لشحن اللاب و هكذا. بالنسبة للسؤال الاخر فهناك الكثير من الاحصائيات و هي مختلفة من موقع لاخر اهم مافي الامر انه يتم اختيار اللغة بناءا على متطلبات التطبيق ونوعيتة
  8. هذا سؤالا جيدا اريد ان اضيف بعض النقاط تعقبا على اجابة الاخ مسعود اولا بعد ان تعرف الهيكلة العامة لاطار العمل جانقو يجب ان تعرف ان الصفحة في اطار العمل جانقو في العموم تتكون من ثلاثة اشياء: URL و هو رابط الصفحة view هنا نكتب معظم المنطق والعمليات مثلا استرجاع البيانات وتعديلها وتخذينها. Template و فيها اكواد HTML CSS اللتي تكون الصفحة التي تنظر اليها الان. لكي تفهم مشروع جانقو ابدا بال URL لان ال URL يقود لفيو معين ثم تتبع الكود في الفيو سطرا بعض سطر لا التنفيظ في بايثون يتم على هذه الطريقة بعد ذلك يقوم الفيو بارجاع ال Template وهكذا... اما بالنسبة للسؤال الاخر فهذا فورم لتسجيل مستخدم جديد حيث قمنا بتحديد الحقول التي نريدها في الكلاس meta ارجو ان تكون الاجابة واضحة
  9. نعم هناك العديد من الطرق لفحص أكواد جانغو واشهر هذه الطرق هي unittest و هي مكتبة مدمجة في مكتبات Python القياسية. كما يمكن ايضا استخدام مكتبات اخرى. اما بالنسبة لفحص إستعلامات SQL يجب نتحقق من بعض الاعتبارات لجعل تطبيق Django أسرع. اولا يجب تقليل كمية الاستفسارات قدر الامكان وذلك بمراقبة هذه الاستفسارات عن طريق استخدام اداة ك Django Debug Toolbar ثانيا استخدم الطريقة الغير متزامنة أينما شئت باستخدام Celery هناك بعض العمليات التي لا تتطلب أن يتم تنفيذها بشكل متزامن والتي قد تستغرق بعض الوقت وتبطئ تطبيقنا. على سبيل المثال ، إرسال بريد إلكتروني إلى المستخدم بعد قيامه بإجراء ما ، أو حساب القيم لتقرير أو تحديث بعض المعلومات داخل قاعدة البيانات. بالإضافة إلى ذلك ، هناك بعض العمليات التي قد تستغرق وقتًا طويلاً للانتهاء والتي ستؤثر على تطبيقنا مباشرةً. لكل هذه الأنواع من الإجراءات ، يمكنك استخدام Celery Celery عبارة عن قائمة انتظار مهام تركز على المعالجة في الوقت الفعلي ، مع دعم جدولة المهام أيضًا. ثالثا قم بالستخدام ال Cache. وايضا هناك بعض الامور التي يجب مراعاتها ككتابة كود نظيف.
×
×
  • أضف...