رفتن به مطلب
انجمن پشتیبانی لاراول ایران

هاست لاراول با پشتیبانی 24 ساعته و امکانات کامل از مدیرهاست

Special_One

مدیر
  • تعداد ارسال ها

    122
  • تاریخ عضویت

  • آخرین بازدید

  • Days Won

    23

تمامی ارسال های Special_One

  1. سلام مجید سعی کن پیام ها در قالب یک پیام ارسال کنید در صورت تکرار اخطار دریافت میکنید. شما بهتره کدهاتون رو بفرستید این پیام خطا به این معنی هست که فایل شما را پیدا نمیکنه . طریقه صحیح آدرس دهی در فایل app.scss شما میتونی به پوشه resources بری در پوشه resources\sass\app.scss برید و به این صورت آدرس دهی کنید @import '~bootstrap/scss/bootstrap'; اگر بری تو webpack میتونی ببینی چی نوشته همین دوتا فایل رو میکس کرده mix.js('resources/js/app.js', 'public/js') .sass('resources/sass/app.scss', 'public/css'); اما اگر بخوای جداگانه آدرس بدی اینطور آدرس دهی کن . وارد webpack میشی و این کدها را مینویسی اگر چند مورد هم بود داخل [ ] قرار بدین. mix.sass('resources/sass/app.sass', 'public/css') .sass('resources/sass/admin.sass', 'public/css/admin');
  2. سلام فربد جان در اسرع وقت آموزش رو به صورت ویدیویی (لاراول و ویو جی اس) در سایت قرار خواهیم داد سپاس از شما
  3. سلام امیر مثالی از داکیومنتنشن لاراول برای شما میزنم تا این مفهوم برای شما قابل فهم باشد. public function post() { return $this->belongsTo('App\Post'); } در مثال بالا، Eloquent سعی میکنه که مقدار post_id موجود را در مدل فرضی بگیره حالا ما میخوایم که این کلید خارجی رو از حالت پیش فرض خارج کنیم . خب چطور؟؟!!! return $this->belongsTo('App\Post', 'foreign_key'); به جای foreign_key کلید خارجی خود را بنویسید اما نیاز نیست در داخل مایگریشن این کار رو انجام بدید Eloquent فراتر از این هاست که شما مجبور بشی در مایگریشن بخواین کاری انجام بدین موفق تر باشید
  4. در ویدیو چه چیزی می آموزیم: آموزش ساخت داده های ساختگی آموزش تزریق از طریق Tinker شناخت Seeder , Fake ها آشنایی با Tinker آموزش تزریق از طریق ترمینال آموزش تبدیل تاریخ از میلادی به شمسی تزریق داده های ساختگی و آشنایی با پکیج faker در گیت هاب معرفی Navicat و...
  5. سلام ضمن عرض تشکر بابت مشارکت در انجمن لطفا از عناوین مناسب تری برای موضوع و همچنین از تگ ها برای نشنانه گذاری سوال استفاده شود. شما بهتر بود از کدهایی که نوشته اید عکس یا خود کدها رو در اختیار ما میگذاشتید تا بهتر راهنمایی کنید به هر حال من به عنوان مثال یک ویرایش و بروزرسانی فرضی انجام میدهم که مطمئنم قابل فهم خواهد بود. دیتابیس من حاوی یک جدول به نام Products میباشد که نام محصول و قیمت در آن میباشد. Products |--------id |--------name |--------price حال من برای برای هرگونه تغییر و قبت باید این مقادیر را در داخل مدل خود اضافه کنم. protected $fillable = [ 'name', 'price', ]; من بایدداخل web.php روت های مربوط به این دو را بسازم. Route::group(['prefix' => '/admin/product', 'middleware' => 'auth'], function () { Route::get('/edit/{product}', 'backend\ProductController@edit')->name('product.edit'); Route::put('/update/{product}', 'backend\Product@update')->name('product.update'); }); حال نوبت به ویرایش و بروزرسانی میرسد که من داخل کنترلر آن را مینویسم. قسمت Edit چیز خاصی ندارد و ما باید یک ویو را بازگردانیم public function edit(Product $product) { return view('backend.product.edit', compact('product')); } ما در اینجا مقدار داخل کلاژر که یک مدل جدید از دیتابیس هست را با دستور Compact به ویو ارسال میکنیم تا در آنجا بتوانیم مقادیر را به کاربر نشان بدهیم تا بفهمد چه مقداری دارد تا اگر نیاز بود تغییر دهد. در Update ما با Save , Update میتوانیم عملیات را انجام دهیم. public function update(Request $request, Product $product) { $validatedData = $request->validate([ 'name' => 'required|max:255', 'price' => 'number' ]); $product->update($request->all()); return view('index'); } من در اینجا در تابع Update در ابتدا اعتبارسنجی را انجام دادم و گفتم که نام محصول من که همنام با جدول دیتابیس هست باید نوشته شود و اجباری است و نمیتواند بیشتر از 255 کاراکتر باشد و برای قیمت هم گفتم باید فقط عدد باشد. در ادامه متغیر product را با متد آپدیت به روزرسانی میکنیم که در اینجا من همه request ها رو گفتم . این بیسیک ترین راهی بود که گفتم البته باید داخل try باشد تا خطاهارا مدیریت کرد و...... موفق و سربلند باشید
  6. دوست عزیز شما میتونید از آکاردیون استفاده کنید و داخل حلقه قرار بدید
  7. میتونید از این پیکیج استفاده کنید ساده تر و کارآمدتر است
  8. سلام امیر عزیز برای تغییر فونت باید با css این کار را انجام بدین .شما باید فونت ها را با فرمت های eot , ttf , woff , woff2 رو داشته باشید. @font-face { /* نام فونت */ font-family:'IranYekanLight'; /*نمایش فونت در مرورگر*/ src:url(' fonts/IranYekan/eot/iranyekanweblight\(fanum\).eot'); src:local('bYekan'), /* لود درصورت وجود فونت در سیستم کاربر */ local('b Yekan'), /* فونت ها برای پشتبانی در مرورگرهای مختلف و دستگاه ها*/ url(' fonts/IranYekan/eot/iranyekanweblight\(fanum\).eot?#iefix') format('embedded-opentype'), url('fonts/IranYekan/woff/iranyekanweblight\(fanum\).woff') format('woff'), url('fonts/IranYekan/ttf/iranyekanweblight\(fanum\).ttf') format('truetype'), url('fonts/IranYekan/woff2/iranyekanweblight\(fanum\).woff2') format('woff2'); /* استایل فونت ها */ font-style:normal; font-weight:normal; } /*انجمن لاراول ایران*/ مانا باشید
  9. سلام فربد عزیز این کار رو میشه با vueیا ajax انجام داد که به نظر من میشه یه جدول برای تصاویر و یک کلید خارجی برای اون تعریف کرد . آقای @ابوالفضل طالبی با ajax و vue آشنایی دارن میتونید با منشن کردن بگین کمکتون کنن
  10. سلام دوست گرامی بهتره که پیام ها تون رو در قالب یک پیام بفرستید به جای تشکر میتونید با لایک منظور خودتون رو برسونید بهتره style و methods ها در ویو مربوط به خودش باشه که مشخص باشه تا زمانی که پروژه بزرگ شد گیج کننده نباشه سپاس از اینکه قوانین رو رعایت میکنید:)
  11. سلام سامان جان شما به خاطر این از لاراول استفاده میکنید که MVC هست اول از همه باید عرض کنم کدهای شما هر چقدر هم درست باشه از نظر من و هر کسی که لاراول کار میکنه غلطه چون که شما اصلا معماری MVC رو رعایت نکردین و کلا کارتون اشتباهه.چون من تو کد هاتون Model نمیبینم دومین راهنمایی که میتونم بهتون بدم اینه که میتونید از قسمت setting---font رو تغییر بدین فونت Fira Code بهترین انتخاب برای نمایش بهتر کاراکتر های فارسی هست کدهای شما برای ذخیره به این صورت خواهد بود مدل خودمون رو میسازیم و اگر نیازی برای رابطه در دیتابیس ها بود در این قسمت ایجاد میکنیم و مقایری که نیاز هست رو برای دیتابیس ارسال بشه رو اینجار در fillable ذکر میکنیم =========== Model=========== protected $fillable = [ 'name', 'description', 'image', 'tags', 'price', 'status', 'category_id', ]; /// Example حالا نوبت کنترلر خودمون هست که بسازیم در متد Store ما ابتدا نیاز داریم یک متغیر تعریف کنیم و یک آبجکت جدید میسازیم البته من در اینجا اعتبارسنجی ها رو نمیگم. بعد دستورات خودمون رو باید داخل try ,catch میندازیم تا به نحوی خطاهای خودمون رو هندل یا مدیریت کنیم. در اینجا ما شئی جدید از دیتابیس که به نام محصول یا product ساخته بودیم رو بتا دستور create میگیم که این رو بساز اما چه چیزی رو برای ما باید بسازه ؟؟؟ خب مسلم هست ما چه چیزی رو میخوایم در دیتا بیس ایجاد کنیم ما میخواهیم درخواست هایی که از طرف یک انسان در فرم ما ارسال میشه رو در قالب یک ستون در پایگاه داده خودمون بسازیم و ثبت کنیم .پس میگوییم همه درخواست هایی که به طرف شما ارسال میشود را ثبت کن (اشاره به کد داخل try ) سپس خطاهایی که وجود دارد رو میتوینم جوری باهاشون برخورد کنیم که کاربر نبیته چون شکل بهتری داشته باشه سایت ما پس من اومدم از Exeption استفاده میکنم .و میگم اگر شما با خطای 23000 دیتا بیس مواجه شدی بیا و یک پیامی به صفحه alert من بفرست . پیام هم داخل متغیر msg قرار دادم . در غیر این صورت من پیامی موفقیت آمیز به صفحه هشدار میفرستیم. =========== Controller =========== public function store(Request $request) { $validatedData = $request->validate([ 'name' => 'required|max:255', 'price' => 'number', ]); $product = new Product(); try { $product->create($request->all()); } catch (Exception $exception) { switch ($exception->getCode()) { case '23000' : $msg = 'مقدار تکراری و عدم ثبت در دیتابیس'; return redirect(route('product.index'))->with('warning', $msg); } } $msgsuccess = 'با موفقیت انجام شد'; return redirect(route('product.index'))->with('success', $msgsuccess); } حالا من نیاز به روت دارم برای مسیر دهی به صفحاتم پس به این دو صورت میتونم عمل کنم. روت ها مباحث ساده ای هستن نیاز به توضیح ندراه. =========== Routing =========== Route::group(['prefix' => '/admin/product', 'middleware' => 'auth'], function () { //////Routes }); ========Or ========= Route::resource('product', 'ProductController')->except([ 'create', 'store', 'update', 'destroy' ]); این صفحه هشدرا های من هست اگر به مباحث error handeling در مستندات لاراول نگاه کنید هست نکته این هست اگر در کنترلر نگاه کنید ما دو عدد session به این صفحه تحت عنوان Warning , Success فرستادیم و برای آن ها استایل هایی متفاوت هم میتوانیم تعریف کنیم. =========== صفحه ای برای نمایش ارورها در سایت =========== @if ($errors->any()) @foreach ($errors->all() as $error) <ul> <li style="color: red;margin: 1rem;" class="font_bold">{{ $error }}</li> </ul> @endforeach @endif @if (session('warning')) <h3 style="color: green; text-align: center;" class="font_bold"> {{session('warning')}} </h3> @endif @if (session('success')) <h3 style="color: green; text-align: center;" class="font_bold"> {{session('success')}}</h3> @endif حالا برای نمایش ارور ها در داخل blade به این صورت عمل میکنیم کافی است برای نمایش خطا ها ما صفحه blade خطا ها را incloud کنیم . نمایش خطا ها در ویو @incloud('alert.alert') فرم برای ارسال داده <form meethod="POST" action="{{route('store')}}"> @csrf ///Inputs </form> مهم ترین نکته در اینجا کنترلر بود که با کمی دقت به روند کارش پی میبری . موفق باشین
  12. شما باید طبق این مراحل جلو برید و در ضمن آدرس دهی ها داخل webpack رو درست انجام بدین. 1+ npm install 2+ آدرس دهی فایل webpack.json +3 npm run dev برای نمایش تغییرات به صورت آنلاین npm run watch من احتمال میدم فایل ها رو درست آدرس دهی نکردید
  13. دستور رو درست وارد کنید npm run dev
  14. سلام امیدوارم که حال خوب باشه سامان برای استفاده از vue js شما باید کامپوننت بسازید به این صورت //app.js Vue.component('exmaple',required('components/Exmaple.vue')); //Code //Example.vue <template> //Code </template> برای پاس دادن باید داخل blade به صورت نوشت <example></example>
  15. سلام روز بخیر بله اما اگر بیشتر از دو مورد بخواهید آپلود کنید باید توجه کنید ID و کدهای JS تغییر کند. برای ثبت در دیتابیس هم بهتر است از این کد استفاده کنید. $yourDBname = new YOURDBNAME(); $yourDBname->create($request->all()); سپاس از شما
  16. سلام خدمت دوستان در مباحث چندین بار عرض شده که این پکیج در لاراول نسخه 7 دیگر پشتیبانی نمیشود . اما بنا به درخواست دوستان این کار رو انجام دادیمو برای دوستان هم قرار میدیم . موفق باشید./
  17. سلام مشکل شما این هست که آدرس دهی ها رو اشتباه وارد میکنید در این تاپیک کامل توضیح داده شده است سپاس از شما
  18. لینک آپارات: https://www.aparat.com/v/fzjZQ منبع پکیج : https://github.com/alexusmai/laravel-file-manager توجه کنید تمام سوالات مربوط به این پکیج در اینجا باید مطرح شود و در صورت رعایت نکردن با کاربر خاطی برخورد خواهد میشود. سپاس گذار از دوستان
  19. در حال تهیه ویدیو آموزشی هستم به زودی با هماهنگی در روی سایت قرار خواهد گرفت
  20. سلام سال نو مبارک چندین بار عرض کردیم و پکیج جایگزین هم معرفی کردیم میتونید از این پکیج استفاده کنید و قابلیت انتخاب چندین تصویر شاخص هم داشته باشید.
  21. سلام آقا امیر گل گلاب همونطور که میدونی بوت استرپ داره نسخه 5 هم میده بیرون و باید بروز باشی و عقب نمونی. در داخل لاراول ما مثل بقیه فریم ورک ها میتونیم از چند روش مرسوم از این تکنولوژی استفاده کنیم و به تگ های HTML خودمون ظاهر متناسب بدیم و یک سایت خلاقانه بسازیم. روش استفاده به این چند صورت انجام میگیره که کامل توضیحات رو میدم خدمتتون. روش های کلی استفاده از بوت استرپ در پروژه لاراول ابتدا به سایت مرجع رفته و از قسمت Documentation --> Download روش های دانلود را مشاهده میکنیم . 1-روش اول : ( Compiled CSS and JS) همانطور که ملاحظه میکنید فایل هایی به شما میدهد که نیاز به کامپایلر ندارد بعد از دانلود ما باید فایل های دانلود شده را داخل پوشه پابلیک قرار دهید و به روشی که عرض میکنم عمل کنید. <link href="{{url('assets/css/bootstrap.min.css')}}" rel="stylesheet" type="text/css"> <script src="{{url('assets/js/jquery.min.js')}}"></script> <script src="{{url('assets/js/bootstrap.bundle.min.js')}}"></script> <script src="{{url('assets/js/bootstrap.min.js')}}"></script> معماری پوشه ها public |------| assets |---------| css |---------| js روش بعدی استفاده در پروژه های لاراول استفاده از CDN ها است که بسیار راحت تر میباشد از همان قسمت دانلود کافیست لینک ها را کپی کرده و در جای مناسب قرار دهید. روش استفاده بعدی استفاده از npm هست که پیشنهاد داده نمیشه ( هم این هم لاراول میکس ). برای اینکار ابتدا دستور زیر را در ترمینال وارد کرده npm install bootstrap سپس وارد فایل package.json شوید و کدهای زیر را اضافه کنید.(آدرس ها طبق مسیر فایل های خود) "styles": [ "styles.css", "../node_modules/bootstrap/dist/css/bootstrap.min.css" ], "scripts": [ "../node_modules/jquery/dist/jquery.min.js", "../node_modules/bootstrap/dist/js/bootstrap.min.js" ], و روش استفاده آخر ه که برات میگم استفاده از روش کامپوزری بوت استرپ هست .دیگه فک نکنم نصب این دیگه نیاز به توضیح داشته باشه composer require twbs/bootstrap:4.4.1 موفق تر باشید.
  22. سلام بر شما اول یک خبر قاطع بدم که پکیج Unisharp دیگه با نسخه 7 سازگار نیست و نمیشه استفاده کرد ، شما باید پکیج های دیگری را جایگزین کنید پیشنهاد بنده این پکیج هست کخ قابلیت های خوبی داره که در صورت صلاح دید روش استفاده و کانفیگ در انجمن قرار داده میشه. https://github.com/alexusmai/laravel-file-manager
  23. وقت بخیر شما بسته به نیاز روابط رو در داخل جداول ایجاد میکنید ، اگر هر جایی نیاز دیدین میتونید از قسمت model یا قسمت migrations اسن اتصال را برقرار کنید موفق باشید
×
×
  • جدید...