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

كل الأنشطة

تحدث تلقائيًا

  1. الساعة الماضية
  2. ماهيا ملفات الارتباط في php وش المقصود
  3. اليوم
  4. البارحة
  5. السلام عليكم شنو الطريقة الصحيحة للتعامل مع صاحب المشروع اثناء التقديم على عمل وتواصله معي؟ اقصد انو بكثير من الأحيان يجي صاحب المشروع احس انه يتواصل معاي عشان ياخد افكار وفجأة يقول لغيت الفكرة او يروح يختار مستقل ثاني بعد ما نكون متفقين وقايل انو حيشتغل معي مثلاً وكيف الطريقة الصح اللي ممكن اتبعها لتحديد المتطلبات بشكل صح بحيث اضمن ما يصير تغيير؟ يعني من بداية التواصل حتى البدأ بالمشروع ارجو الافادة والتفصيل واتشكركم
  6. شكرًا لك أخي مصطفى، اني اختاجها لأني قمت بتثبيت الحزم على جهازي بإصدارات محددة ومتأكد من عدم تضاربها وأنا أقوم بإنشاء بيئة افتراضية دوماً، لكن لماذا أعيد تثبيت الحزم التي قمت بتثبيتها مسبقاً واللي حجمها كبير! اني فقط أريد أن آخذها من الأساس وأضعها في البيئة الافتراضية جيد عشان ما أضيع وقت بالتنزيل رائع شكراً لحضرتك تم حل المشكلة
  7. تقريباً وصلت الفكرة شكراُ لحضرتك شكرا جزيلاً أخ علي على جهدك وأمثلتك الجميلة، تمام اني افتهمت الفكرة
  8. كيف يمكن استخراج الهيكلية للملف PDF وكيف لي ان اخزن الشكل على ماذا اعتمد في هذه الحالة ؟؟
  9. فئات البيانات في بايثون (Data Classes) تم تقديمها اول مرة من الاصدار 3.7 تقدم طريقة أنظف وأكثر كفاءة لكتابة الClasses التي نحتاج: يوجد العديد من التوابع التي نكتبها بشكل يدوي والتي تقوم ببعض الوظائف الخاصة بالClass معين سوف نتعرف على بعضها ومثال لهذه التوابع التي تسمى ( "dunder" methods ) واهمها عند تعريف Class يجب تعريف الباني (constructor) الخاص به مثال ليكن لدينا الClass الخاص بتعريف عن مستثمر حيث يتعرف عليه ب اسمه و عمره وثروته class Investor: def __init__(self,name,age,cach): self.name = name self.age = age self.age = age نلاحظ ضروة استخدام الدالة __init__ لتمكني من تعريف المستثمر i1 = Investor("ali",25,8000) i2 = Investor("Jasem,",20,100000) في حال غياب الباني (constructor) لا يمكن تمرير القيم للكائن واذا اردنا طباعة i1 يظهر نتيجة بشكل غير مفهوم كالاتي : ولحل هذه المشكلة يمكن الاستعانة بالدالة repr نضيفه على Class ونحدد من خلاله القيمة التي نريد ان نطبعا حين طباعة الكائن من الClass : class Investor: def __init__(self,name,age,cach): self.name = name self.age = age self.age = age def __repr__(self) -> str: return self.name نعيد طباعة i1 لتظهر قيمة الاسم الخاصة بهذا الكائن كالاتي : واذا اضفنا كائن اخر يشابه في بيانته الكائن الاول كالاتي i1 = Investor("ali",25,8000) i2 = Investor("Jasem,",20,100000) i3 = Investor("ali",25,8000) واختبرنا اذا كان متشابهان نلاحظ انه اعطى قيمة خطأ اي انهما غير متساويين علما لو اختبرنا عن تساوي نفس الكائن يعطي انهما مساويين اي يرجع True ويوجد دالة تساعد هذا Class في تحديد السمة التي نريد المقارنة عليها في حال اردنا تطبيق اختبار المساوات وهي الدالة eq وتعرف بالشكل التالي في حال اردنا ان يقارن على الاسم فقط : class Investor: def __init__(self,name,age,cach): self.name = name self.age = age self.age = age def __repr__(self) -> str: return self.name def __eq__(self, Other) -> bool: return self.name == Other.name في حال اعدنا الاختبار تساوي الاولمع الثالث سوف يقول انهما متشابهان كالاتي علما انه ولو غيرنا بالميزات الاخرى كالعمر والرصيد سوف يظل يراهم متشابهان وذلك بسبب تعريفك لدالة التساوي لا يؤثرفيها سوا الاسم مثال: نلاحظ بقائها تعطي انهما متساويين حيث يمكن اضافة ميزة ميزة والتاكد من تساويهما ويعتبر هذا مجهد في حال كان هناك الكثير لذلك سوف نتعرف على فائدة الData Classes التي توفر علينا مجهود هذه العمليات كالتالي : حيث نستدعي dataclass وبعدها نعرف بمفهوم decorator وهو مفهوم في برمجة كائنية التوجه تقوم بنوع من التغليف للوظائف وتعرف في بايثون بالشكل @dataclass يوضع فوق تابع اوكلاس from dataclasses import dataclass @dataclass class Investor: name : str age : int cach : float نلاحظ عدم تعريف تابع باني ولا تابع الاستعراض repr لكن امكننا تعريف كائن منه وعند طباعة الكائن يظهر بمظهر افضل ووفر علينا عناء كتابة التوابع المساعدة السابقة وعند اختبار التساوي اظهر قدرته على معرفة التساوي وعند تغير قيمة يظهر عدم التساوي وهذا شيئ منطقي لانه يقارن على كل البيانات الخاصة بالكائن لذلك نلخص ان dataclass ساعدنا عللى توفير الوقت والجهد في الخوض في معالجة هذه الامور وجعل الكود افضل واكثر احترافية وقابلية للفهم. وهي مفيدة جدا عند التعامل مع الباينات من قواعد البيانات
  10. تلك ميزة جديدة في بايثون 3.7 وما بعدها، لغرض إنشاء كلاسات تحتوي على بيانات فقط (بدون أساليب أخرى)، وتُستخدم لتخزين المعلومات التي ستتم نقلها بين أجزاء مختلفة من البرنامج أو النظام. بالتالي تُسهل إنشاء كلاسات بعدد أسطر أقل من الكود وتُنفذ بشكل ضمني بعض الأساليب الأساسية مثل __init__ و __repr__ و __eq__، وتوفر تمثيلًا نصيًا للكائنات باستخدام __repr__ ومقارنات بسيطة وتحويل البيانات إلى نماذج بيانات أخرى، مثل JSON أو CSV. تستطيع استيراد الديكوريتور @dataclass من وحدة dataclasses ثم استخدامه لتعريف كلاس بيانات: @dataclass class Person: name: str age: int email: str وذلك التعريف يُنشئ فئة Person مع ثلاثة خصائص name من نوع str، age من نوع int، و email من نوع str. ويتم التحقق من نوع البيانات تلقائيًا عند إنشاء مثيل من الفئة، وباستطاعتك تعديل الخصائص بعد إنشاء المثيل، ومقارنة مثيلات الفئة باستخدام عامل المقارنة == @dataclass class Person: name: str age: int email: str person1 = Person("Jasem", 30, "Jasem@example.com") person2 = Person("Jasem", 25, "Jasem@example.com") print(person1.name) print(person2.age) if person1 == person2: print("The persons are equal") else: print("The persons are not equal")
  11. لا حاجة لك بذلك، ما الفائدة من معرفة مكان تثبيت الحزمة؟ فليس لك حاجة بالملفات الخاصة بها. ويتم تثبيتها في مجلد بايثون في قرص الـ C في الويندوز، وذلك في مسار مشابه للتالي: C:\Users\اسم المستخدم لديك\AppData\Local\Programs\Python\Python310\Lib\site-packages ولرؤية المكتبات المثبتة global أي عالمي للاستخدام بأي مشروع استخدم الأمر: pip list ولحذف أي حزمة استخدم الأمر: pip uninstall اسم الحزمة ومن الأفضل إنشاء بيئة إفتراضية في مجلد المشروع وسيتم تثبيت المكتبات في نفس مجلد المشروع في مجلد البيئة الإفتراضية الذي يوجد به مجلد باسم lib
  12. الفرق الرئيسي بين "/" و "//" هو نوع القيمة المُرجَعَة. في حالة العملية "/"، تحصل على النتيجة عائمة (float)، في حين أن العملية "//" ترجع نتيجة صحيحة (integer) دون الجزء العشري. مثال: ويمكن الاسنغناء عن القسمة عن طريق "//" وقصر نتيجة الطريقة الاولى عبر دالة int كالشكل التالي نلاحظ ادى الى نفس النتيجة حيث يمكن اختيار الطريقة التي تناسبك انت حيث القصر عن طريق int امر شائع بكل لغات البرمجة اما "//" فهو امر خاص في بايثون ويمكنك الاطلاع على باقي العمليات من خلال الرابط التالي https://wiki.hsoub.com/Python/numeric_operations
  13. عند استخدام ال / للقسمة فإن النتيجة تكون الرقم بالكامل وفى حالة أنه رقم به كسور مثل 10/3 فإن النتيجة ستكون 3.333333 أى أنه تكون النتيجة وبها الجزء الكسرى. result1 = 10 / 3 print(result) # Output: 3.333333 result2 = 10 / 2 print(result2) # Output: 5 أما عند استخدام // للقسمة يتم ترجيع الرقم الصحيح فقط ويتم اقتطاع الجزء الكسرى مثلا 3//10 فإن النتيجة ستكون 3 فقط أى أنه تكون النتيجة ويتم اقتطاع الجزء الكسرى. result1 = 10 // 3 print(result) # Output: 3 result2 = 20 // 3 print(result2) # Output: 6 العمليات العددية في بايثون
  14. السلام عليكم انا اشتغل جانغو ورأيت مفهوم في بايثون عن Data classes واتمنى اذا احد يتكرم علي ويشرحلي ايش هي وهل تفيدني وشلون استخدمها
  15. ما هو الفرق بين القسمة ب / او // في بايثون
  16. بارك الله فيك علي الرد الان ممكن كود تحقق من انه مستخدم موجود في قاعدة بيانات او لا في حالة موجود ينتقل لصفحة الرئيسية في حالة لا يظهر رسالة خطأ هل نستخدم كلاس يسمي User ممكن توضيح
  17. وعليكم السلام لازم تعرف ان مدير الحزم pip بثبت الحزم بمواقع مختلفة حسب النظام والبيئة. لكن بشكل افتراضي: - في نظام Linux: تتثبت في /usr/local/lib/pythonX.X/dist-packages - في نظام التشغيل Windows: مسار التثبيت العام الافتراضي هو: C:\Users\{username}\AppData\Local\Programs\Python\PythonXX\Lib\site-packages - على نظام التشغيل macOS: يقوم pip بتثبيت الحزم في المسار: /Library/Python/X.X/site-packages - في حال كنت عم تستخدم بيئة افتراضية (Virtual Environment): ال`pip` رح يثبتلك الحزم داخل مسار تلك البيئة، عادةً ضمن (مثلاً اسم البيئة env): env/lib/pythonX.X/site-packages وأريد أن أختتم بطريقة سهلة يمكنك اتباعها لمعرفة مكان تثبيت حزمة معينة: pip show <package_name> والذي سيعرض معلومات الحزمة بما في ذلك موقعها وستجد الحزم جميعها في نفس المكان. مثال ايجاد مكان تخزين Django انظر الى الموقع يظهر في الاسفل ملاحظة أخيرة: يمكنك تغيير موقع التثبيت الافتراضي عن طريق إعداد ملفات pip.ini (على نظام Windows) أو pip.conf (على نظام Linux/Mac)، لكني أنصحك عند تثبيت بايثون بترك موقع التثبيت الافتراضي لتتجنب أي مشاكل محتملة.
  18. حياك الله على التوضيح فقد كنت أواجه بعض المشاكل في هذا الموقع وكنت سأنتقل لأجرب استضافة أخرى
  19. السلام عليكم شلون اعرف فين الأداة (pip) تنزل المكاتب والأشياء اللي اني انزلها عن طريقها؟ من غير ما ادور البايثون فين مثبتة عندي
  20. يعتمد تحديد افضل استضافة على متطلبات المشروع حيث اغلب الاستضافات تكون مجانية بقيود مثل الزمن او المساحة لكن افضل العروض المجانية هو render: لنبدأ ب render: اولا يعطيك 1G من التخزين المجاني وذلك لمدة 90 يوم فقط وبعدها اما تسجل في حساب اخر او تدفع اشتراك ولتثبيت اتبع الخطوات التالية اعداد قاعدة البيانات من نوع PostgreSQL: أولا ، توجه إلى لوحة معلومات العرض الخاصة بك وقم بإنشاء قاعدة بيانات PostgreSQL. انقر فوق الزر + جديد ، وقم بالمرور فوق PostgreSQL ، وانقر فوقه. بعد ذلك، حدد إعدادات قاعدة البيانات الخاصة بك عن طريق إعطاء مثيل قاعدة البيانات اسما. يمكنك اختيار إما السماح ل Render بتعريف اسم لقاعدة بيانات ومستخدم أو تعريفه بنفسك. حدد الخطة المجانية وانقر على إنشاء قاعدة بيانات. ملاحظة: تنتهي صلاحية كل قاعدة بيانات مجانية تم إنشاؤها على Render بعد 90 يوما من الإنشاء. لذا فقط لاحظ هذا وقم بالترقية إذا كان مشروعا مهما. يمكنك رؤية الأسعار هنا بمجرد أن تظهر الحالة في قاعدة البيانات الخاصة بك متفعلة ، فهذا يعني أن قاعدة البيانات قد تم إنشاؤها بنجاح وجاهزة للاستخدام مثل الصورة التالية. بعد ذلك توجه إلى إعدادات قاعدة البيانات الخاصة بك على عرض ونسخ عنوان URL لقاعدة البيانات الخارجية. ثم في ملف الاعدادات المشروع جانغو قم باضافة وضع الurl داخل ملف .env لأسباب أمنية. import dj-database-url import os DATABASES = { "default": dj_database_url.parse(os.environ.get("DATABASE_URL")) } بعد ذلك، قم بترحيل الجداول إلى قاعدة البيانات الجديدة لضمان نجاح الاتصال بالشكل التالي # To make migrations if this is your first time connecting to a database python manage.py makemigrations #To migrate tables set on your migrations folders python manage.py migrate إذا كان الاتصال ناجحا وقمت بترحيل جميع الجداول الخاصة بك ، فيجب أن يبدو الخرج كما يلي: أنت الآن على بعد خطوة واحدة من نشر مشروع Django الخاص بك! 🎉 كيفية إنشاء خدمة الاستضافة: هذه هي الخطوة الأخيرة لبدء مشروعك. توجه إلى لوحة معلومات العرض الخاصة بك. انقر فوق جديد + وحدد خدمة ويب قم بتوصيل GitHub الخاص بك إذا لم تكن قد قمت بذلك بالفعل ولذلك يسهل عليك عملية النشر. يجب أن يبدو هكذا : بعد ذلك ، حدد إعدادات الريبو الخاص بك. امنح تطبيقك اسما وتأكد من اتصالك بالفرع الصحيح. تاكد من تنزيل gunicorn وخادم ويب Python يعمل كبوابة بين تطبيق الويب والإنترنت. إنه مصمم للنشر لأنه يدير طلبات الويب الواردة بشكل فعال. وجلب جميع المكاتب ومتطلبات المشروع عن طريق الامر الثاني : pip install gunicorn pip freeze > requirements.txt # To update your requirements.txt file تأكد من إضافة خدمة الويب Render إلى ALLOWED_HOSTS في settings.py الخاص بك. وبعد ذلك حدد ملف المتطلبات والخادم واللغة ارجع إلى لوحة معلومات العرض وانقر على خدمة الويب المنشورة لعرض الرابط المباشر الخاص بك. لقد قمت بنشر تطبيق Django الأول الخاص بك على منصة مجانية. استمتع بخادم الويب الخاص بك لمدة 90 يوما القادمة.
  21. عادة ما يفضل وضع كل فئة في ملف منفصل إذا كانت الفئة كبيرة بما يكفي أو إذا كان لها استخدام مستقل لكن يبقى ذلك ليس ضروريا، ويمكنك تجميع عدة فئات في ملف واحد خاصة إذا كانت تعتمد على بعضها البعض بشكل كبير أو إذا كانت صغيرة بما يكفي. ففي حالة ما كانت الفئات لها نفس الهدف يمكن وضعها في ملف واحد إذا كان المشروع كبيرا، لتفادي العدد الكبير من الملفات من أجل التنظيم والتنسيق.
  22. وعليكم السلام ورحمة الله وبركاته . نعم بالطبع ان كتابة تعريف الصنف (class) فى اى لغه سواء بايثون او اى لغه اخرى هو شئ جيد جدا من حيث التنظيم وسهولة القراءة والصيانه ومعالجة الاخطاء . تخيل معى انك لديك صنف يثوم باداء وظيفة محددة و يحوى على العديد من الشفرات والاسطر الكثيرة مثلا فوق الالف سطر اول اقل او اكثر . فاذا قمت بوضعه بداخل الكود الخاص بك فستجد ان الكود اصبح مشتتا ولا تعرف ان تحدد الوظائف او اكتشاف الاخطاء . واذا اردت مثلا ان تقوم بنشر هذا الصنف او ارساله الى احد حتى يقوم بالتطوير عليه او حتى استخدامه فسيجد صعوبة فى فهم الكود ولن يتمكن من فصل الاصناف او الكود من بعضها البعض . ولذلك الحل الافضل فى الاصناف الكبيرة او حتى الصغيرة التى تعتمد على بعضها فى البعض هو فصلها فى ملف منفصل وتسمية هذا الملف باسم الصنف او الوظيفة المناسبة واستدعاءه فى المكان الذى تريد انشاء كائنات من هذا الصنف
  23. السلام عليكم هو يفضل ان اكتب class في ملف لوحد في لغه الباثيون؟
  24. عليك امتلاك المهارات التي تؤهلك للعمل بهذه المجال كما ذكر في التعليق سابق ثما البحث عن عمل في مواقع العمل الحر كما مستقل يمكنك الدخول من هنا https://mostaql.com/ ثما البحث عن الوظائف التي تحمل الكلمه المفتاحيه مدخل بيانات او data entry وستظهر لك جميع المشاريع المشابه بالكلمات المفتاحيه التي كتبتها يمكنك اختيار مشروع مشابه لمهاراتك وكتابة عرض جيد وباذن الله يتم اختيارك بتوفيق
  25. حسنا سأوضح لك الصورة، أولا القسم الذي يشمل لغة SQL أقصى اليسار، تشمل هذه الفئة أنظمة قواعد البيانات التي تستخدم لغة الاستعلام الهيكلية (SQL) لإدارة وتعديل قواعد البيانات الرابطية (العلائقية). الأمثلة في الصورة هي Microsoft SQL Server و MySQL و Oracle و SQLite. وتعرف هذه بأنظمة إدارة قواعد البيانات الرابطية (RDBMS). القسم الأوسط وهو لغة NoSQL تشمل هذه الفئة أنظمة قواعد البيانات التي لا تستخدم SQL وهي مصممة لمعالجة البيانات غير المنظمة أو شبه المنظمة بكفاءة أكبر، الأمثلة في الصورة هي Cassandra و MongoDB و Redis. وتعرف هذه بقواعد بيانات NoSQL. أما عن الفرق الرئيسي بين SQL و RDBMS ف SQL هي عبارة عن لغة استعلام هيكلية وهي لغة البرمجة المعيارية المستخدمة لإدارة التفاعل مع قواعد البيانات الرابطية. وهي تتيح لنا إنشاء وتعديل واستعلام البيانات المخزنة في قاعدة بيانات رابطية. أما RDBMS فهو نظام إدارة قواعد البيانات الرابطية ويشير إلى البرنامج أو النظام الذي يوفر طريقة لإنشاء وإدارة واستخدام قواعد البيانات الرابطية. ويستخدم RDBMS لغة SQL للتفاعل مع قاعدة البيانات. لذلك، SQL هي اللغة، بينما RDBMS هو البرنامج أو النظام الذي ينفذ ويستخدم SQL لإدارة قواعد البيانات الرابطية. تظهر الصورة أيضا "Program TO Run RDBMS" مع أمثلة مثل phpMyAdmin و HeidiSQL، وهي أدوات واجهة مستخدم رسومية تستخدم للتفاعل وإدارة RDBMS مثل MySQL بسهولة أكبر.
  26. يُحدث خلط شائع بين لغة SQL ونظم إدارة قواعد البيانات العلائقية (RDBMS)، فعلى الرغم من ارتباطهما الوثيق، إلا أنهما مفهومان مختلفان. حيث أنّ لغة SQL (Structured Query Language)، لغة برمجة معيارية تُستخدم للتفاعل مع قواعد البيانات العلائقية، وتسمح بإنشاء الجداول، وإضافة البيانات، واستردادها، وتعديلها، وحذفها، تُستخدم لكتابة أوامر مثل SELECT و INSERT و UPDATE و DELETE، أي تُعتبر لغة إعلانية، حيث تصف ما تريدين فعله بالبيانات بدلاً من شرح كيفية القيام بذلك. بينما نظام إدارة قواعد البيانات العلائقية (RDBMS)، هو برنامج لإدارة وتنظيم البيانات في قاعدة بيانات علائقية يخزن البيانات في جداول مرتبطة ببعضها البعض من خلال علاقات محددة ويُنفذ قواعد معالجة البيانات وضمان اتساقها. و أنظمة إدارة قواعد البيانات العلائقية الشائعة هي MySQL و PostgreSQL و Oracle Database و Microsoft SQL Server. الأمر بحاجة إلى تفصيل ستجديه هنا:
  27. أهلاً لدي سؤال مالفرق بين لغة SQL و RDBMS؟ وارجوا توضيح هذه الصورة..
  1. عرض المزيد
×
×
  • أضف...