-
المساهمات
90 -
تاريخ الانضمام
-
تاريخ آخر زيارة
نوع المحتوى
ريادة الأعمال
البرمجة
التصميم
DevOps
التسويق والمبيعات
العمل الحر
البرامج والتطبيقات
آخر التحديثات
قصص نجاح
أسئلة وأجوبة
كتب
دورات
أجوبة بواسطة Osama Kha
-
-
-
بتاريخ 1 ساعة قال Mustafa Suleiman:
توفر مكتبة Laravel Spatie وظيفة لتحويل السلسلة النصية إلى مصفوفة:
use Spatie\Translatable\HasTranslations; class YourModel extends Model { use HasTranslations; public $translatable = ['value']; public function getValueAttribute($value) { $translatedValue = $this->getTranslations('value'); $numericValue = $this->id; return [ 'value' => $translatedValue, 'numeric_value' => $numericValue, ]; } }
من خلال إضافة خاصية "translatable" إلى النموذج لتحديد الحقل المترجم، ثم استخدام الدالة "getTranslations" لاستخراج القيمة المترجمة للحقل، يتم إضافة القيمة العددية للحقل كقيمة رقمية. يمكنك الآن استخدام خاصية "value" و "numeric_value" لعرض القيم المترجمة والقيم الرقمية على التوالي.
هل يمكنك اكمال الخطوات وكيف يمكن التعامل معها ضمن صفحة blade
المشكلة هي انه لا يتعرف على getTranslations في صفحة blade
من فضلك لو تم اعطاء سيناريوه الخطوات كاملة وشكرا
- 1
-
اقوم بالتعديل على سجل ما يحوي السجل على تفاصيل وصورة احتاج الى طريقة لعدم اعادة طلب لتحميل الصورة اي يبقى محتفظ بالصورة القديمة بشكل تلقائي
مشابهة لفكرة قيمة بدائية لحقل ما
- 1
-
-
بتاريخ 4 ساعة قال Adnane Kadri:
ان كانت الحقول لديك يتم تصريح أسماءها بـ title و details و img_path فيجب بطبيعة الحال التحقق منها باعتبار هاته الاسماء، فبدل ان يكون:
$request->validate([ 'Ads_Title' => 'required', 'Ads_Details' => 'required', 'Ads_Img_Path' => 'required' ])
يجب ان يكون:
$request->validate([ 'title' => 'required', 'details' => 'required', 'img_path' => 'required' ])
وإلا فإنه يجب عليك تصريح الاسماء المتحقق منها في توليد الحقول:
{! Form::text('Ads_Title' ,null, ['placeholder' => 'english title']) !}
شكرا لك اخي الكريم تمت عملية التحقق بنجاح يوجد سؤال اخر من فضلك هل يوجد تابع لمنع المستخدم من ادخال محارف عربية في حقول انكليزية والعكس ايضا استخدم مكتبة الترجمة المقدمة من لارافيل spatie/laravel-translatable هناك حقلين الاولى باللغة العربية والثاني باللغة الانكليزية احتاج الى منعه من الادخال في حالة كان الحقل عربي يدخل عربي ......
-
يوجد لدي حقل في الداتابيز مخزن على الشكل التالي {"en" :"value1," ar":value} احتاج استرجاع وعرض القيم في حال كانت اللغة انكليزية يعرض value1 والا يعرض value حسب اللغة يعرض القيمة
- 2
-
تم عمل جميع الخطوات المذكورة لكن بقية رسائل الخطأ الافتراضية بالاضافة الى عند اعادة ادخال البيانات بالشكل الصحيح لايقوم ب اضافة المحتوى بل تظهر رسائل الخطأ نسفها
بتاريخ 1 ساعة قال Mustafa Suleiman:باستطاعتك استخدام ميزة الـ Validation المتوفرة في Laravel لتحقق من صحة الحقول وتعيين رسائل الخطأ المناسبة لكل حقل بشكل منظم.
من خلال استخدام ملف التحقق (validation) الموجود في المسار app/Http/Requests لتحديد قواعد التحقق لكل حقل، ثم استخدام هذا الملف لتحقق من صحة الحقول وعرض رسائل الخطأ الخاصة بكل حقل.
فمثلاً، إذا كان لديك حقل "name" في نموذج التسجيل، فيمكنك إنشاء ملف التحقق التالي:
namespace App\Http\Requests; use Illuminate\Foundation\Http\FormRequest; class RegisterRequest extends FormRequest { public function rules() { return [ 'name' => 'required|min:3|max:255', 'email' => 'required|email|unique:users', 'password' => 'required|confirmed|min:6', ]; } public function messages() { return [ 'name.required' => 'يجب أن تدخل اسمك.', 'name.min' => 'يجب أن يحتوي الاسم على 3 أحرف على الأقل.', 'name.max' => 'يجب أن يحتوي الاسم على 255 حرفًا كحد أقصى.', 'email.required' => 'يجب أن تدخل عنوان بريدك الإلكتروني.', 'email.email' => 'يجب أن يكون عنوان بريدك الإلكتروني صالحًا.', 'email.unique' => 'عنوان البريد الإلكتروني هذا مستخدم بالفعل.', 'password.required' => 'يجب أن تدخل كلمة مرور.', 'password.min' => 'يجب أن تحتوي كلمة المرور على 6 أحرف على الأقل.', 'password.confirmed' => 'تأكيد كلمة المرور غير متطابق.', ]; } }
و في المثال، تم تعريف قواعد التحقق لحقول الاسم والبريد الإلكتروني وكلمة المرور، وتم تعريف رسائل الخطأ الخاصة بكل حقل.
ثم يمكنك استخدام ملف التحقق في نموذج التسجيل الخاص بك كالتالي:
public function register(Request $request) { $validatedData = $request->validate([ 'name' => 'required|max:255', 'email' => 'required|email|unique:users|max:255', 'password' => 'required|min:6|max:255', ]); // اكمل هنا بالكود الذي تريده }
بعد ذلك، عليك باستخدام خاصية "error message bag" في Laravel لعرض رسائل الخطأ وتعليقها على حقول الإدخال المحددة.
وفي حالة عدم مرور عملية التحقق بنجاح، يتم إنشاء "error message bag" تحتوي على جميع رسائل الخطأ المتعلقة بالحقول الفارغة أو غير الصالحة، وباستطاعتك استخدام هذا الملف لعرض رسالة الخطأ المناسبة لكل حقل إدخال بشكل فردي.
كمثال، استخدم الكود التالي في ملف نموذج التسجيل:
@if ($errors->any()) <div class="alert alert-danger"> <ul> @foreach ($errors->all() as $error) <li>{{ $error }}</li> @endforeach </ul> </div> @endif <div class="form-group"> <label for="name">Name</label> <input type="text" class="form-control" id="name" name="name" placeholder="Enter your name"> @error('name') <div class="alert alert-danger">{{ $message }}</div> @enderror </div> <div class="form-group"> <label for="email">Email</label> <input type="email" class="form-control" id="email" name="email" placeholder="Enter your email"> @error('email') <div class="alert alert-danger">{{ $message }}</div> @enderror </div> <div class="form-group"> <label for="password">Password</label> <input type="password" class="form-control" id="password" name="password" placeholder="Enter your password"> @error('password') <div class="alert alert-danger">{{ $message }}</div> @enderror </div>
هنا، يتم عرض رسالة الخطأ الشاملة في الجزء العلوي من النموذج باستخدام دالة $errors->any()، وتعرض رسالة الخطأ الفردية لكل حقل إدخال بشكل منفصل باستخدام @error('field_name') و $message، حيث يتم استبدال 'field_name' بالاسم الحقيقي لحقل الإدخال المحدد.
هل الطريقة صحيحة لم يتغير اي شيء عن سابقه
- 1
-
في الصور المرفقة يقوم بالتحقق من الحقول اذا كانت فارغة ف يقوم ب اخفاء جميع الحقول مع اظهار رسالة الخطأ لكن احتاج ان تكون عمليات التحقق بشكل منظم اكثر من ذلك اي يعطي رسالة الخطأ اسفل ال input مع عدم اخفاء الفورم
بتاريخ منذ ساعة مضت قال Osama Kha:وحتى عند ظهور الرسالة والقيام ب اعادة ادخال جميع الحقول تبقى رسالة الخطأ
بتاريخ منذ ساعة مضت قال Osama Kha:هكذا يظهر الخطأ
- 1
-
حتى عند التحديد لايعمل ويظهر رسالة الخطأ
SQLSTATE[42000]: Syntax error or access violation: 1118 Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. This includes storage overhead, check the manual. You have to change some columns to TEXT or BLOBs (Connection: mysql, SQL: create table `universities` (`university_id` smallint unsigned not null auto_increment primary key, `uni_name` varchar(30) not null, `Uni_vision` varchar(3000) not null, `uni_Mission` varchar(3000) not null, `uni_Goals` varchar(3000) not null, `About_university` varchar(8000) not null,
-
-
هل عملية ال validation للحقول ضمن laravel تعتبر افضل ام انه التعامل مع عمليات التحقق ك front end خيار افضل مثلا JavaScript
احتاج معرف الفرق وايهما افضل
الفكرة بشكل عام هو التحقق ب استخدام laravel يتطلب طلب او ارسال الى السيرفر ليتأكد انه تم ادخال المعلومات بما يتناسب مع انواعها؟ ام انه لايحتاج لذلك
لا اعلم اذا كان الذي اعتقده صحيح مئة بالمئة او لا ليس دائما
ال validation من جهة ال front end يعتبر خيار جيد لانه لا يتم ارسال الطلب اما من جهة ال back end يتطلب وهذا يؤثر على السيرفر من جهة الطلبات
- 2
-
//head @if (App::getLocale() == 'en') <link href=" {{ asset('css1/rtl.css') }}" rel="stylesheet"> @else <link href=" {{ asset('css1/ltr.css') }}" rel="stylesheet"> @endif //head //body @foreach (LaravelLocalization::getSupportedLocales() as $localeCode => $properties) <a rel="alternate" hreflang="{{ $localeCode }} " class="language_icon" href="{{ LaravelLocalization::getLocalizedURL($localeCode, null, [], true) }}"> <i class="fa fa-language" style="font-size: 48px"></i> </a> @endforeach //body
عند استخدام هذا الكود فقط يقوم بتحويل لغة الموقع من enالى ar لكن العكس لايقبل
{{ $properties['native'] }} هذا التعليمة لو وضعت مكان <tag <i فيعمل بشكل صحيح لكن يظهر خيارين اما عربي او انكليزي
احتاج معرفة كيف يمكن استبدال اللغة بمجرد الضغط على الايقونة نفسها
- 1
-
احتاج الى قيود تمنع من ظهور المحتوى بشكل غير صحيح كيف يممن التعامل مع عرض وطول الصورة بحيث لاتفقد من دقتها وهل يجب ان تكون الصورة قبل التخصيص مناسبة ام لا في حال كانت الصورة ذو ابعاد مختلفة تمام عن مساحة ال divاو ال اي tagاخر وماهي افضل الطرق والمعايير لتعامل مع الصور
- 1
-
يوجد حقل في الداتابيز عبارة عن مسار ل صورة كيف يمكن التعامل معه باستخدام ايطار العمل laravel مثال
مجموعة فعاليات لها صور احتاج استيرادها وعرضها على الموقع
- 1
-
نشر حدث لكن احتاج الى شرط وهو تخصيص حدث معين ان يكون له افضلية اي عند نشر الأحداث على الموقع يجب ان يظهر الحدث الذي له اولولية ف المقدمة (حدث مهم على سبيل المثال )
- 1
-
اقوم بتصميم موقع ويب عند التعامل مع الواجهات تم استخدام قوالب جاهزة
السؤال الاول احتاج الى معرفة هل ازا كانت مكتبة jquery مناسبة وفعالة
السؤال الثاني ما الفرق بين تضمين المكتبة بشكل داخلي اي داخل ملفات المشروع او linkلرابط من المتصفح وايهما افضل
- 2
-
اقوم بتصميم موقع لجهة معينة هل يوجد اداة تساعدني في اختبار شيفرات html css js انها مكتوبة بشكل سليم.
بالاضافة الى ذلك هل يوجد اداة تقوم بإضافة الميديا المناسبة لكود css لجعل الموقع مناسب على جميع الشاشات ام يجب مراعاة ذلك عند تصميم الموقع من البداية
- 2
-
امكانية الحذف والتعديل عن طريق واجهة او قالب جاهز ويتم التخصيص بناء على متطلبات المشروع
ما هو افضل خيار وهل تعتبر dashborad الموجودة داخل ايطار العمل خيار مناسب ام هناك طرق اخر ل ادارة محتوى وشكرا جزيلا
- 1
-
-
هل من الصحيح وضع النوع string بالنسبة للسعر على سبيل المثال ممكن وضع xxبدل من 01وهذا غير منطقي
-
اريد حجز خانة او خانتين لمتحول من نوع integer
$table->tinyInteger('price'); 4digte $table->Integer('price',2); 11 digte
عند استخدام الصيغة التالية لا يقوم بتحديد الطول بشكل دقيق عند فتح phpmyadmin
- 1
-
اريد حجز خانة او خانتين فقط مثال
عدد الساعات الكامل ضمن الكلية اقصى حد له 999
$table->integer('price',2); $table->integer('price')->lenght(1);
قمت ب التعامل مع هاتين الصيغتين لكان عند فتح phpmyadmin يبقى int(11)
ولكم جزيل الشكر
-
كتاب او رابط ل كتاب مجاني لتعلم pure php للمبتدئين
-
اريد موقع لاستضافة قاعدة البيانات وnode js
بهدف التجربة والتعلم كيف تتم استضافة الموقع
- 2
كيف يمكن عمل حلقة تكرارية ل استرجاع جميع العناصر في لارافل
في أسئلة البرمجة
نشر
شكرا لك اخي الكريم لكن احتاج الى الحلقة التكرارية ضمن المثال المرفق بالصورة عند وضع ال foreachقبل ال form يقوم بتكرارها على عدد العناصر احتاج الى الية لعرض العناصر ضمن drop down