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

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

Special_One

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

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

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

  • Days Won

    21

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

  1. سلام علیرضا عزیز این مشکل در نسخه 6 حل شده بود و در نسخه هفت هم مشکلی نیست میتونید روش حل مشکل رو در این ویدیو ببینید https://www.aparat.com/v/SAed6 در بخش پکیج های لاراول هم میتونید از پکبج هایی که معرفی شده استفاده کنید موفق باشید
  2. سلام دوست گرامی در لاراول میکس تصاویر مطرح نیست و فقط ما میتوانیم فایل های css و js را فشرده سازی کنید اما برای تصاویر شما نیاز به پکیج هایی دارید که تصاویر را فشرده کنند . در ضمن در ویدیو آموزشی ما از قالب آماده استفاده کردیم اما در حالت واقعی ما قالب را از ابتدا پیاده سازی میکنیم و تصاویر را بنا بر نیاز باید توسط پکیج پیاده سازی کنیم.
  3. سلام دوست گرامی برای احراز هویت نیازی برای ایجاد جداگانه احراز هویت نیست چنانچه نیازی به این حالت باشد باید شما طبق حالت پیش فرض لاراول مدل MVC را پیاده سازی کنید و blade مورد نظر را بسازید و ادامه ماجرا...
  4. Special_One

    استفاده از foreign

    سلام دوست گرامی در حالت پیش فرض که در model روابط را ایجاد میکنیم id کلید خارجی است اما با متد های دیگری هم میشود حالت پیش فرض را تغییر داد و به این نکته توجه کنید که کلید خارجی باید از نوع bigInt باشد چون در لاراول نسخه جدید این حالت بوجود امده است . موفق باشید.
  5. سلام اقا فربد خیلی مخلصیم برای گزاشتن عکس باید یه تغییرات کوچولو بدی نسبت به کدهات من یه تصویر به دیتابیس با ویوجی اس و لاراول ارسال میکنم تا حساب کار دستت بیاد که چطور انجام میشه. قسمت ویو جی اس ما یک ورودی میخواهیم برای ارسال عکس <!-- image --> <label for="p-image">تصویر محصول</label> <input type="file" name="image" id="p-image" class="form-control form-control-sm" v-on:change="onImageChange" /> توجه داشته باش که فرم شما این اتربیوت را داشته باشه چون ولیدیت های لاراول که برای تصاویر قرار میدی برای شما کار نخواهد کرد من اینجا دومثال میزنم تا حالت های مختلف رو ببینی <form enctype="multipart/form-data" @submit.prevent="submit"> <input type="text" name="name" class="form-control form-control-sm" v-model="name" /> <!-- image --> <label for="p-image">تصویر محصول</label> <input type="file" name="image" id="p-image" class="form-control form-control-sm" v-on:change="onImageChange" /> </form> حالا میریم سراغ نوشتن متد ها قسمت ویو <script> export default { data() { return { name: "", image: "", }; }, methods: { onImageChange(e) { this.image = e.target.files[0]; }, submit() { //formdata let formData = new FormData(); formData.append("name", this.name); formData.append("image", this.image); axios .post("/api/Product", formData, {}) .then(function(response) { console.log(response); }) .catch((error) { console.log(error) } }); } }, mounted() { console.log("Component mounted."); } }; </script> خب من با axios داده های api خودم رو به متد store فرستادم حالا بریم سراغ کدهای بک اند public function store(Request $request) { //validatedData $validatedData = $request->validate([ 'name' => 'required|max:255|string', 'image' => 'required|image|mimes:jpeg,png,jpg' ]); $product = new Product(); $product->name = $request->name; //image save $image = $request->image; $filename = $request->slug . $request->id . '.' . $image->getClientOriginalExtension(); $image->move(public_path('images/products'), $filename); $product->image = $filename; try { //save request $product->save(); } catch (Exception $exception) { switch ($exception->getCode()) { case '': return response()->json(['error' => $validatedData->messages()], 442); } } } حالا زمان آپلود فایل شما در پوشته images/products ذخیره میشه موفق باشید و امیدوارم کدها رو درک کرده باشید.
  6. سلام دوست عزیز قبل از اییجاد تاپیک در انجمن سرچ کنید سپاس از شما
  7. سلام مشکل این است که encoding سند css باید در ابتدا کدها قرار بگیره @charset 'utf-8'; body{ color:green; overfolw-x:hidden; font-family: 'IranYekan',serif; } /* Code ... */
  8. سلام ویدیویی در این زمینه در روزهای آتی ضبط میشه در انجمن قرار داده میشه
  9. سلام امیر عزیز شما باید به این صورت عمل کنید. دو روش رو خدمتتون عرض میکنم باشد که مفید باشد./ روش اول» اضافه کردن در Blade ابتدا فایل ها را در پوشه public قرار میدهیم و در فایل هسته یا مرکزی blade اینگونه عمل میکنیم <!DOCTYPE html> <html lang="en"> <head> <!-- Required meta tags --> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <title>@yield('title')</title> <!-- plugins:css --> <link rel="stylesheet" href="{{ url ('/chosen/chosen.css') }}"> </head> <body> <script src='http://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.2/jquery.min.js'></script> <script src="{{ url ('/chosen/chosen.jquery.js') }}"></script> </body> </html> برای استفاده هم میتونید از مثال ها در صفحه گیت هاب پروژه استفاده کنید. روش دوم» اضافه کردن در وب پک mix.js([ '/chosen/chosen.jquery.js', ] , 'public/js'); mix.css([ '/chosen/chosen.css', ] , 'public/css'); موفق باشید
  10. سلام امیر به نظر من هر چقدر به روز تر باشید منطقی تر است نه اینکه در نسخه 8 لاراول مجبور بشید از نسخه 5.8 به 8 سوئیچ کنید و ممکن هست کار سختی باشه ،تغییرات اساسی لاراول 7 نسبت به 6 زیاد نبوده و میتونی خیلی زود خودت رو برسونی به ورژن 7 اما تو 8 نمیدونم چقدر تغییرات میخواد اعمال بشه . اما باز هم تصمیم با خودت هست . باز هم نظر آقای طالبی و صابر عزیز رو بپرسین @ابوالفضل طالبی @saber
  11. بهتر است این موارد را در بخش تماس با ما ارسال کنید . به ایمیلتون ارسال شد
  12. فرقی نمیکنه شما داده ها رو پاس میدی بهش اون هم توسط filterاین کار را برای شما انجام میده
  13. اگر امکانش هست از کدهای مایگریشن تصویر بفرستید
  14. از Api استفاده میکنی ؟ وقتی از Api استفاده میکنی نیازی نیست از base url استفاده کنی من خودم ویوجی اس کار میکنم یه نمونه واست نشون میدم برای ساخت دسته data() { return { name: '', shortdesc: '', }; }, methods: { create() { axios.post("/api/cat/", { name: this.name, shortdesc: this.shortdesc, }) .then(function () { Swal.fire({ title: 'دسته با موفقیت ساخته شد', icon: 'success', confirmButtonText: 'باشه', showCloseButton: true }) }), this.$router.push('/dashboard') .catch(function (error) { const Toast = Swal.mixin({ toast: true, position: 'top-end', showConfirmButton: false, timer: 3000, timerProgressBar: true, onOpen: (toast) => { toast.addEventListener('mouseenter', Swal.stopTimer) toast.addEventListener('mouseleave', Swal.resumeTimer) } }) Toast.fire({ icon: 'warning', title: ' خطایی رخ داد' }) }); console.log(error) } }, به Api توجه کن آدرسی ندادم اما تو url مشکلی ندارم این مربوطبه لاراول میشه نه ری اکت شما url رو تو env مشخص میکنی نه در react یا ویو این ها فقط ظاهر رو تشکیل میدن و لوکوموتیو سایت بک اند هست که همه این کار هایی که گفتی تو بک انجام میشه
  15. دوست عزیز بهترین راه برای اینکه از این پکیج های مسخره و سنگین استفاده کنید این هست که از Vuejs هست خیلی ساده با فیلترها و API میتونید سرچ را انجام بدهید.یک نمونه ساده براتون با ویوجی اس قرار میدم. جستجو با ویو جی اس به صورت SPA بدون رفرش صفحه
  16. سلام مهدی عزیز شما باید ابتدا دیتابیس خود را پاک کنید و تمام جداول رو پاک کنید. سپس وارد پوشه app\Providers\AppServiceProvider.php میشوید و در تابع boot این کد را مینویسی public function boot() { // Schema::defaultStringLength(191); } و در ابتدا دستور use Illuminate\Support\Facades\Schema; را باید اضافه کنید و در انتها دستور php artisan migrate اجرا کنید و کار تمام موفق باشید
  17. سلام مجید سعی کن پیام ها در قالب یک پیام ارسال کنید در صورت تکرار اخطار دریافت میکنید. شما بهتره کدهاتون رو بفرستید این پیام خطا به این معنی هست که فایل شما را پیدا نمیکنه . طریقه صحیح آدرس دهی در فایل 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');
  18. سلام فربد جان در اسرع وقت آموزش رو به صورت ویدیویی (لاراول و ویو جی اس) در سایت قرار خواهیم داد سپاس از شما
  19. سلام امیر مثالی از داکیومنتنشن لاراول برای شما میزنم تا این مفهوم برای شما قابل فهم باشد. public function post() { return $this->belongsTo('App\Post'); } در مثال بالا، Eloquent سعی میکنه که مقدار post_id موجود را در مدل فرضی بگیره حالا ما میخوایم که این کلید خارجی رو از حالت پیش فرض خارج کنیم . خب چطور؟؟!!! return $this->belongsTo('App\Post', 'foreign_key'); به جای foreign_key کلید خارجی خود را بنویسید اما نیاز نیست در داخل مایگریشن این کار رو انجام بدید Eloquent فراتر از این هاست که شما مجبور بشی در مایگریشن بخواین کاری انجام بدین موفق تر باشید
  20. در ویدیو چه چیزی می آموزیم: آموزش ساخت داده های ساختگی آموزش تزریق از طریق Tinker شناخت Seeder , Fake ها آشنایی با Tinker آموزش تزریق از طریق ترمینال آموزش تبدیل تاریخ از میلادی به شمسی تزریق داده های ساختگی و آشنایی با پکیج faker در گیت هاب معرفی Navicat و...
  21. سلام ضمن عرض تشکر بابت مشارکت در انجمن لطفا از عناوین مناسب تری برای موضوع و همچنین از تگ ها برای نشنانه گذاری سوال استفاده شود. شما بهتر بود از کدهایی که نوشته اید عکس یا خود کدها رو در اختیار ما میگذاشتید تا بهتر راهنمایی کنید به هر حال من به عنوان مثال یک ویرایش و بروزرسانی فرضی انجام میدهم که مطمئنم قابل فهم خواهد بود. دیتابیس من حاوی یک جدول به نام 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 باشد تا خطاهارا مدیریت کرد و...... موفق و سربلند باشید
  22. دوست عزیز شما میتونید از آکاردیون استفاده کنید و داخل حلقه قرار بدید
  23. میتونید از این پیکیج استفاده کنید ساده تر و کارآمدتر است
  24. سلام امیر عزیز برای تغییر فونت باید با 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; } /*انجمن لاراول ایران*/ مانا باشید
×
×
  • جدید...