Mohammad Kiblawi نشر 12 أغسطس 2021 أرسل تقرير نشر 12 أغسطس 2021 السلام عليكم اريد ان اعما post ل عناصر المشروع (titlte description image) لكن عند الضغط على الزر publish لا يقوم ال form بتوجيهي الى /projects فاقوم بكاتبته في ال url ولكن عند كتابته يظهر هذا الخطئ اقتباس
0 سمير عبود نشر 12 أغسطس 2021 أرسل تقرير نشر 12 أغسطس 2021 إذا كنت تريد إعادة توجيه المستخدم بعد إضافة بيانات المشروع لقاعدة البيانات يُمكنك ذلك من خلال الدالة المسؤولة عن التخزين في آخر الدالة تكتب: return redirect('/projects'); // أو return redirect()->route('projects.index'); أما المشكلة الأساسية أي عدم التعرف على المتغير projects فهل تأكدت من أنك تمرر المتغير من الدالة index: return view('projects.index', compact('projects')); 1 اقتباس
0 Mohammad Kiblawi نشر 12 أغسطس 2021 الكاتب أرسل تقرير نشر 12 أغسطس 2021 بتاريخ 7 ساعات قال عبود سمير: إذا كنت تريد إعادة توجيه المستخدم بعد إضافة بيانات المشروع لقاعدة البيانات يُمكنك ذلك من خلال الدالة المسؤولة عن التخزين في آخر الدالة تكتب: return redirect('/projects'); // أو return redirect()->route('projects.index'); أما المشكلة الأساسية أي عدم التعرف على المتغير projects فهل تأكدت من أنك تمرر المتغير من الدالة index: return view('projects.index', compact('projects')); السلام عليكم نعم لقد قمت بتمرير المتغير في الدالة index و لكن بقي الحال كما هو السلام عليكم نعم لقد قمت بتمرير المتغير في الدالة index و لكن بقي الحال كما هو 1 اقتباس
0 سمير عبود نشر 12 أغسطس 2021 أرسل تقرير نشر 12 أغسطس 2021 بتاريخ الآن قال Mohammad Kiblawi: السلام عليكم نعم لقد قمت بتمرير المتغير في الدالة index و لكن بقي الحال كما هو لكن لاحظ انك تقوم بتعريف المتغير بالإسم project بدون s و تمرره ايضا بذلك الإسم يجب تمرير الإسم بنفس الإسم الذي تستخدمه 1 اقتباس
0 Mohammad Kiblawi نشر 12 أغسطس 2021 الكاتب أرسل تقرير نشر 12 أغسطس 2021 بتاريخ 19 دقائق مضت قال عبود سمير: لكن لاحظ انك تقوم بتعريف المتغير بالإسم project بدون s و تمرره ايضا بذلك الإسم يجب تمرير الإسم بنفس الإسم الذي تستخدمه شكرا لك حلت المشكلة و ظهر المنشور لكن هنالك مشاكل اخرى اولا لا يتم التوجيه بعد الضغط على الزر publish ثانيا لا تظهر صورة المنشور التي ادخلتها ثالثا لا يمكنني اضافة اكثر من منشور اي فقط منشور واحد سأقوم بتسجيل فيديو صغير حتى تتوضح الامور Company_-_Google_Chrome_2021-08-12_11-48-39.mp4 1 اقتباس
0 سمير عبود نشر 12 أغسطس 2021 أرسل تقرير نشر 12 أغسطس 2021 بتاريخ 27 دقائق مضت قال Mohammad Kiblawi: شكرا لك حلت المشكلة و ظهر المنشور لكن هنالك مشاكل اخرى اولا لا يتم التوجيه بعد الضغط على الزر publish ثانيا لا تظهر صورة المنشور التي ادخلتها ثالثا لا يمكنني اضافة اكثر من منشور اي فقط منشور واحد سأقوم بتسجيل فيديو صغير حتى تتوضح الامور من خلال الفيديو يتضح ان بعد إرسال الطلبية جزء ال validation يفشل لسبب او لآخر يمكنك التأكد من ذلك، عند فشل التحقق يتم إرجاع المستخدم للخلف أي للصفحة الماضية و يتم إرجاع رسائل الأخطاء في المصفوفة errors تحقق من ان اسماء الحقول المطلوبة هي نفسها التي تضعها في حقول الإستمارة كما انه لرفع ملف او صورة يجب إضافة الخاصية enctype="multipart/form-data" للإستمارة تأكد من هذه الأمور التي اخبرتك بها إن لم تستطع يرجى توضيح شيفرات الإستمارة و الدالة المسؤولة عن تخزين السجل اقتباس
0 Mohammad Kiblawi نشر 12 أغسطس 2021 الكاتب أرسل تقرير نشر 12 أغسطس 2021 بتاريخ 16 دقائق مضت قال عبود سمير: من خلال الفيديو يتضح ان بعد إرسال الطلبية جزء ال validation يفشل لسبب او لآخر يمكنك التأكد من ذلك، عند فشل التحقق يتم إرجاع المستخدم للخلف أي للصفحة الماضية و يتم إرجاع رسائل الأخطاء في المصفوفة errors تحقق من ان اسماء الحقول المطلوبة هي نفسها التي تضعها في حقول الإستمارة كما انه لرفع ملف او صورة يجب إضافة الخاصية enctype="multipart/form-data" للإستمارة تأكد من هذه الأمور التي اخبرتك بها إن لم تستطع يرجى توضيح شيفرات الإستمارة و الدالة المسؤولة عن تخزين السجل هذه هي الصور اقتباس
0 سمير عبود نشر 12 أغسطس 2021 أرسل تقرير نشر 12 أغسطس 2021 بتاريخ 2 دقائق مضت قال Mohammad Kiblawi: هذه هي الصور لاحظ في الإستمارة حقل العنوان أعطيته نفس الإسم description في الخاصية name و هي نفس القيمة للحقل الثاني تحقق من الحقول التي تحقق منها في التابع store في جزء ال validation موجودة بنفس الأسماء في الإستمارة أعتقد ان هناك حقل title يجب ان يكون من ضمن البيانات المرسلة في الطلب لكن في الإستمارة غير موجود فأنت تعطيه إسم description اقتباس
0 Mohammad Kiblawi نشر 12 أغسطس 2021 الكاتب أرسل تقرير نشر 12 أغسطس 2021 بتاريخ منذ ساعة مضت قال عبود سمير: لاحظ في الإستمارة حقل العنوان أعطيته نفس الإسم description في الخاصية name و هي نفس القيمة للحقل الثاني تحقق من الحقول التي تحقق منها في التابع store في جزء ال validation موجودة بنفس الأسماء في الإستمارة أعتقد ان هناك حقل title يجب ان يكون من ضمن البيانات المرسلة في الطلب لكن في الإستمارة غير موجود فأنت تعطيه إسم description شكرا كثيرا لك على مساعدتي تم التوجيه و لكن مع خطئ اعتقد له علاقة بالصورة لكن لم اعرف ميف احلها اقتباس
0 سمير عبود نشر 12 أغسطس 2021 أرسل تقرير نشر 12 أغسطس 2021 بتاريخ 12 دقائق مضت قال Mohammad Kiblawi: شكرا كثيرا لك على مساعدتي تم التوجيه و لكن مع خطئ اعتقد له علاقة بالصورة لكن لم اعرف ميف احلها الخطأ بداخل الدالة store في المتحكم حيث أنه يتم إستدعاء الدالة extension على null أعتقد أنه تريد هناك جلب لاحقة الصورة لكن لا يمكن تحديد سبب المشكلة إذا لم أرى الكود الخاص بالدالة store 1 اقتباس
0 Mohammad Kiblawi نشر 12 أغسطس 2021 الكاتب أرسل تقرير نشر 12 أغسطس 2021 بتاريخ 5 دقائق مضت قال عبود سمير: الخطأ بداخل الدالة store في المتحكم حيث أنه يتم إستدعاء الدالة extension على null أعتقد أنه تريد هناك جلب لاحقة الصورة لكن لا يمكن تحديد سبب المشكلة إذا لم أرى الكود الخاص بالدالة store store function 1 اقتباس
0 سمير عبود نشر 12 أغسطس 2021 أرسل تقرير نشر 12 أغسطس 2021 بتاريخ 15 دقائق مضت قال Mohammad Kiblawi: store function لاحظ السطر 53 و السطر 54 أنت تستخدم إسم الحقل image و ليس لديك في الإستمارة حقل بالإسم image بل image_path لجب اللاحقة يُمكنك إستخدام: $extension = $request->file('image_path')->extension(); نفس الأمر في السطر 54 يجب إستخدام الحقل image_path بدل image: $request->file('image_path')->move ... // أو $request->image_path->move ... أنصحك بإستخدام نظام التخزين في laravel فهو بسيط فقط إجعل الdisk الذي يستخدمه التطبيق public و قم بإنشاء الوصلة بين storage و public و استخدم دالة store بهذا الشكل: $path = $request->file('image_path')->store('images'); ستجد في التوثيق الرسمي كل ما تحتاجه: file-uploads 1 اقتباس
0 Mohammad Kiblawi نشر 12 أغسطس 2021 الكاتب أرسل تقرير نشر 12 أغسطس 2021 بتاريخ 1 ساعة قال عبود سمير: لاحظ السطر 53 و السطر 54 أنت تستخدم إسم الحقل image و ليس لديك في الإستمارة حقل بالإسم image بل image_path لجب اللاحقة يُمكنك إستخدام: $extension = $request->file('image_path')->extension(); نفس الأمر في السطر 54 يجب إستخدام الحقل image_path بدل image: $request->file('image_path')->move ... // أو $request->image_path->move ... أنصحك بإستخدام نظام التخزين في laravel فهو بسيط فقط إجعل الdisk الذي يستخدمه التطبيق public و قم بإنشاء الوصلة بين storage و public و استخدم دالة store بهذا الشكل: $path = $request->file('image_path')->store('images'); ستجد في التوثيق الرسمي كل ما تحتاجه: file-uploads اولا شكرا لك اخي الكريم و يعطيك العافية لقد اتعبتك معي اخي الكريم هنالك امثر من اسفسار لدي ان لم يكن فيها ثقل اولا الصور لم تظهر في ال cards(صورة رقم 0) مع انني تاكدت من مسارها في dev option و كما ان الصور تتخزن في مكانها المحدد (صورة رقم 1 و 2) فلماذا لا تظهر ثانيا في الموجهات لقد استخدمت route::rescource (صورة رقم 3) مع ProjectController::class قمت بتغير المسار من Route::resource الى Route::post مع ال method Store كما في الصورة رقم 4 فظهر لي خطئ يقول لي ان ال method not allowed or method not supported في الصورة رقم 5 كما نعلم ان get method هي عبر الurl بينما method post لا تكون عبر ال url كما ان ال form لديه طلب من نوع post و لكن -ما الفرق بين route::resource و route::post؟ -كيف يمكنني ان اجعل هذا المسار مع الطلب post ز (Route::post) دون وجود خطئ و شكرا لك❤ اقتباس
0 Wael Aljamal نشر 12 أغسطس 2021 أرسل تقرير نشر 12 أغسطس 2021 بتاريخ 8 ساعات قال Mohammad Kiblawi: اولا الصور لم تظهر في ال cards(صورة رقم 0) هل قمت بتنفيذ التعليمة: php artisan storage:link يوجد أيضا تعديل في ملف env. لتحديد سواقة حفظ الملفات في public ابحث عن ذلك بتاريخ 8 ساعات قال Mohammad Kiblawi: فظهر لي خطئ يقول لي ان ال method not allowed or method not supported في الصورة رقم 5 طبعا لن تعمل GET في حال قمت بتحديد المسار أن يقبل POST فقط بتاريخ 8 ساعات قال Mohammad Kiblawi: -ما الفرق بين route::resource و route::post؟ route::post تستقبل الطلبيات التي من نوع POST فقط، أما route::resource فهي تقوم بتشكيل جميع المسارات من إضافة/حذف/تعديل... بتاريخ 8 ساعات قال Mohammad Kiblawi: -كيف يمكنني ان اجعل هذا المسار مع الطلب post ز (Route::post) دون وجود خطئ أبسط حل أن تضيف مسار لكل طلبية حسب نوعها ودالة مناسبة ضمن المتحكم تحوي شيفرات مناسبة لها. التعليمة التي تظهر المسارات هي: php artisan route:list قم بمراجعة الدروس من فضلك 1 اقتباس
السؤال
Mohammad Kiblawi
السلام عليكم
اريد ان اعما post ل عناصر المشروع (titlte description image) لكن عند الضغط على الزر publish لا يقوم ال form بتوجيهي الى /projects
فاقوم بكاتبته في ال url ولكن عند كتابته يظهر هذا الخطئ
13 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.