نویسنده آنلاین

@tilkacoder

پارس کلیکی از ۸ ماه پیش

تجربه

39100

  • ٢ هفته پیش @tilkacoder به بحث سوال در مورد چند متدد جواب داد.

    بله چرا نشه با استفاده از دستور زیر یک مدل میسازید به اسم ‍‍‍Post :

    php artisan make:model Post

    سپس در مسیر پروژه داخل دایرکتوری app فایل Post.php را باز کنید و یک متد در کلاس به شکل زیر اضافه کنید:

    public static function foo()
    {
            //...
    }
  • ٢ هفته پیش @tilkacoder به بحث سوال در مورد چند متدد جواب داد.

    در خط اول :

    User::has('posts')->get();

    تمامی کاربرانی که حداقل یک پست دارند بازیابی میشوند.

    در خط بعدی ‍eager loading صورت میگیره که در واقع یعنی با توجه به ارتباط کاربران با پست ها تمامی کاربران به همراه پست هاشون رو بازیابی میکنه ( به صورت عادی این اتفاق نمیوفته و در Eloquent با استفاده از eager loading اینکار رو انجام میدیم )

    زمانی که ما نیاز داریم در در متد has ( تمامی کاربرانی که حداقل یک پست دارند) شرط هایی اعمال کنیم از whereHas استفاده میکنیم که در اینجا تمامی پست هایی که تاریخ ساخت آنها بزرگتر از مقدار q هست ( البته این مقدار به نظرم اشتباه است و باید درست مقدار دهی بشه) نمایش داده میشه.

    تابع toarray هم مجموعه ای از داده ها که به آنها collection میگیم رو به صورت آرایه php در میاره (به طور مثال مقدار های بازیابی شده با استفاده از Eloquent رو در صورتی که به صورت collection باشه با استفاده از toArray به آرایه تبدیل میکنیم)

    در رابطه با متدto فکر میکنم یک متد تعریف شده توسط کاربر باشه.

  • ٣ هفته پیش @tilkacoder به بحث تفاوت zend server با apache server جواب داد.

    دقیقا با حرفت موافق هستم zend پیشرفت فوقالعاده ای داره و در آینده برای برنامه نویسا میتونه یک گزینه جدید تر و بهتر باشه برای مدیریت نه برای سرور(ولی مدیران به طور معمول سعی میکنن از ابزار های قدیمی که قبلا تجربه خودشون رو پس دادن رو استفاده کنن تا یک ابزار جدید با قابلیت بیشتر).

    apache به صورت کلی برای سیستم های بزرگ طراحی نشده (نمیگم نمیشه استفاده کرد ولی گزینه های خیلی بهتری هست که خدمات بهتری ارائه میکنند همچنین اگر به پروژه های بزرگ نگاه کنیم متوجه این حرف میشیم)

    اگر یه نگاه کلی به این مسئله کنیم میتونی تصمیم بهتری بگیری :

    1. جامعه ای که از apache استفاده میکنن بسیار زیادتر از ‍zend هست البته منظور من از نظر ابزار مدیریتی هست( در نتیجه منابع بیشتر + متخصص بیشتر )
    2. همانطور که خودت گفتی zend ابزار ها و قابلیت ها خیلی زیاد و کاربردی داره همچنین گواهی های zend در هر زمینه ای که خدمات ارائه میکنه معتبر هست و توسط شرکت های بزرگ پذیرفته میشه ( البته منظور خارج از ایران هست)
  • تمامی جواب های شما توی پاسخ اولیه ام وجود داره ولی اینکه کدوم یکی مناسب شما هست در ادامه بهش اشاره میکنم.

    البته راه های زیاد دیگه ای هم وجود داره.

    ببینید اینکه از چه روشی استفاده کنید تمام مربوط به محیط عملیاتی شما هست.

    روش api شاید برای شما مناسب نباشه (وجود ۲ وب سرور سبب اشغال شدن منابع میشه که با توجه به محیط عملیاتی شما بهتره اینکار انجام نشه)

    این اطلاعات توسط چه برنامه و یا افرادی مورد استفاده قرار میگیره.

    استفاده از هر یک راه حل ها مزایا و معایبی داره.

    انتخاب راه حل نامناسب ممکنه ناسازگاری داده و یا هدر رفت منابع رو به دنبال داشته باشه.

    برای پیشنهاد راه مناسب نیاز به شناخت بیشتر محیط عملیاتی و جنس داده هست.

    یکی از مزایا شناخت بیشتر محیط عملیاتی این هست که شما میدونید که دارید چیکار میکنید.

    تا جایی که خاطرم هست شما با تنظیمات خود ‍gateway هم میتونید اینکار رو کنید.( به صورت مستقیم وارد پایگاه داده بشه و بعد از ورود اطلاعات برای خوندنش میتونید پایگاه داده رو در اختیار سیستم های دیگه قرار بدید )

  • sqlite از این عملیات پشتیبانی نمیکنه همچنین سطح دسترسی لازم برای اینکار به صورت ریموت به این شکل وجود نداره.

    راه های زیادی برای اینکه اینکار رو انجام بدی وجود داره :

    1. در صورت وجود شبکه فایل بین سیستم ها اشتراک گذاشته بشه.
    2. ساخت یک api برای انجام عملیات های دیتابیس روی سروری که فایل قرار داره.
    3. زمانی که نیاز به کار با دیتابیس هست فایل دریافت بشه و پس از اتمام کار مجددا روی سرور بارگذاری کنید.
    4. و ...

    به صورت مستقیم امکانش وجود نداره باید از یکی راه حل های جایگزین استفاده کنید

  • خدمت شما دوست عزیز :

    عکس از خطا

    عکس از خطا

    با انجام دادن کارهایی که در بالا توضیح دادم میتونید این خطا را برطرف کنید.

    فکر میکنم شما از postman به نحو صحیح استفاده نمیکنید برای همین هست در دیباگ به مشکل میخورید

    همانطور که در بالا توضیح دادم شما متد را در Route نوشته شده به صورت POST قرار دادید و امکان مشاهده در مرورگر به صورت GET نمیباشد ( برای این درخواست)

  • ٣ هفته پیش @tilkacoder به بحث هایلات کردن کلمات سرچ شده جواب داد.

    برای پیاده سازی سیستم سرچ نیازمند ابزار های زیادی هستید که دوست خوبم امیر تعدادی از آنها را نام برد.

    در رابطه با سوالی که پرسیدی باید بگم راهکار های زیاد و پبچیده ای برای اینکار وجود داره (پلاگین ها، کدهای نمونه و ...)

    یکی از ساده ترین روش ها این هست که کلمه مورد نظر را در اطلاعات بدست آمده ( با استفاده از ajax) جستجو کنید و بین ۲ تگ با یک کلاس خاص قرارش بدید

    نمونه کد

  • اگر خطایی براتون پیش نمیاد پس علت پرسش چیه ؟

    علت این FatalErrorException هم همانطور که نوشته شده این هست که نباید هیچگونه فاصله ای بین شروع تگ php و namespace باشه.

    در واقع کدتون از شکل زیر :

    <?php
    
    namespace App\Http\Middleware

    باید به شکل زیر تغییر پیدا کنه :

    <?php 
    namespace App\Http\Middleware
  • لطفا بخش شرایط و مقررات و همچنین بخش پرسش و پاسخ رو بخونید.

    اگر هم مشکلتون در رابطه با موضوعی با پاسخی حل میشه حتما به عنوان جواب سوال انتخابش کنید تا در آینده دوستان بتونن استفاده کنن.

    در رابطه با MethodNotAllowedHttpException باید بگم به احتمال زیاد شما صفحه را در مرورگر چک میکنید و یا با متد GET داده ها را ارسال میکنید.( من با پست ارسال کردم و مشکلی نبود)

    درضمن این قسمت از کد باید اصلاح بشه :

    if(! auth()->attempt($valiDate)){
                return response([
                    'data'=>'صحیح نیست',
                    'status'=>'error'
                ],403);
            }

    باید علامت بخش if (!auth()→attempt($valiDate)) { به if (!auth()->attempt($valiDate)) { تبدیل بشه.

    در واقع مشکل شما استفاده از نماد → به جای <- هست ( برای متوجه شدن مشکل از مارک دان استفاده نکردم)

    اطلاعات نمونه (ایمیل و پسورد جهت تست) قرار بدید هم بهتره.

  • ٣ هفته پیش @tilkacoder به بحث نحوه اتصال به دیتابیس سایت جواب داد.

    بله حتما

    همچنین باید encode صفحه و اطلاعات ارسال روی utf8 باشه.

    این مشکل حقیقتا خیلی ساده است فقط کافیه کمی سرچ کنی (به زبان فارسی کلی مقاله هست میتونه کمکت کنه) . درضمن مواردی که به ذهنت میرسه حتما تست کن شاید مشکلت حل بشه( هیچ اتفاقی نمیوفته)

  • ٣ هفته پیش @tilkacoder به بحث اختیاری کردن لینک جواب داد.

    باید مسیر به شکل زیر نوشته بشه (شما درست نوشتی):

    Route::post('/api_token/{city?}/', 'ControllerName@foo');

    بعد باید متد به شکل زیر تعریف بشه :

    public function foo($city = null)

    برای اینکه در متد POST csrf token مشکل ایجاد نکنه داخل فایل VerifyCsrfToken در فیلد except باید مقدارش به شکل زیر تغییر پیدا کنه :

    [
        '/api_token/*ٔ'
    ]
  • ٣ هفته پیش @tilkacoder به بحث نحوه اتصال به دیتابیس سایت جواب داد.

    شما میتونید برای پایگاه داده چندین کاربر تعریف کنید که هر کاربر سطح دسترسی های مخصوص به خودش رو داره.

    به طور مثال میتونیم یک کاربر ایجاد کنیم که تنها به یک دیتابیس دسترسی داشته باشه و یک کاربر تعریف کنیم که بتونه همه دیتابیس هارو مدیریت کنه. اینکه هر کاربر چه سطح دسترسی هایی داشته باشه توسط شما مشخص میشه. با کمی سرچ میتونید مثال های خوبی پیدا کنید.

    علت ثبت نشدن اطلاعات چیزهای مختلفی میتونه باشه باید مرحله به مرحله پیش برید تا مشکل پیدا بشه. اگر اطلاعات اصلا ثبت نمیشه دلایل مخصوص به خودش رو داره اگر اطلاعات به صورت ناقص ثبت میشه مشکلات خودش

    باید مرحله به مرحله به همراه تکه کد بررسی بشه.

  • ٣ هفته پیش @tilkacoder به بحث نحوه اتصال به دیتابیس سایت جواب داد.

    ممنون میشم اگر از مارک دان استفاده کنی.

    اگر که دیتابیس روی سروری که اسکریپت اجرا میشه هست خیر نیازی به تغییر آدرس سرور نیست ولی اگر روی سرور دیگه ای هست باید ای پی سرور مورد نظر رو قرار بدی.

    به طور معمول این خطا به ۲ دلیل رخ میده :

    1. کاربر پایگاه داده روی سرور وجود نداره
    2. کاربر دسترسی های لازم بهش داده نشده

    با استفاده از پنل هاستی که دارید میتونید کاربر ایجاد کنید و دسترسی های لازم رو بدید.

    برای استفاده از cli در mysql هم از دستور زیر میتونید استفاده کنید:

    ساخت کاربر:

    CREATE USER 'zahediha_pop'@'localhost' IDENTIFIED BY '123456789';
    

    اعطا دسترسی های لازم :

    GRANT ALL PRIVILEGES ON *.* TO 'zahediha_pop'@'localhost'
    WITH GRANT OPTION;
  • باید موارد مختلفی چک بشه.

    یک گام دیگه این هست که به مسیر bootstrap/cache بری و اگر فایل config.php وجود داشت به هر نامی که میخوای تغییر بدی

  • بعضی از سرویس دهندگان به دلایل امنیتی open_basedir را بر روی تنظیمات php فعال میکنند. ( به طور معمول اینکار را برای دسترسی هر کاربر تنها به فایل های خودش انجام میدهند)

    با ارسال تیکت میتونی بگی این مشکل را برات برطرف کنند ولی معمولا میتونید داخل پنل هاست در بخش PHP Settings مقدار open_basedir را برابر none قرار دهید .( اگر تنظیمات وجود نداشت یا براتون سخت بود تیکت بزنید براتون انجام میدن) قبل از بارگذاری بهتره از دستور زیر هم استفاده کنید :

    php artisan cache:clear

    حتما هم چک کنید که پوشه storage دسترسی کامل برای خواندن و نوشتن توسط اپ را داشته باشد.

  • HTML5 Geolocation در صورتی که gps وجود نداشته باشه بر اساس IP کار میکنه

    علت این اختلاف هم همین هست.

    اولین خروجی که پکت رو خارج میکنه اطلاعات رو اضافه میکنه در نتیجه موقعیت اون ثبت میشه.

    برای پیدا کردن موقعیت جغرافیایی با استفاده از IP در php از این افزونه میتونی استفاده کنی ولی این هم همون مشکل رو داره و موقعیت دقیق نمیده

  • اگر دستور مورد نظر به درستی فایل هارو دریافت کرده باشه میتونی با تغییر فایل webpack.mix.js اینکار را انجام بدی.(دیگه از bootstrap نباید استفاده نکنی)

    باید محتوا این فایل شبیه به زیر باشه :

    mix.js('resources/assets/js/app.js', 'public/js')
        .sass('resources/assets/sass/app.scss', 'public/css')
        .copy('node_modules/mdbootstrap/js', 'public/mdbootstrap/js')
        .copy('node_modules/mdbootstrap/css', 'public/mdbootstrap/css');

    برای استفاده ازش به صورت لوکال هم باید کد زیر را در layout اصلی خودت قرار بدی :

    <link href="{{'{{'}} mix('mdbootstrap/css/bootstrap.css') }}" rel="stylesheet">
    <link href="{{'{{'}} mix('mdbootstrap/css/mdb.css') }}" rel="stylesheet">

    و کد زیر را قبل از بسته شدن تگ body قرار بده :

    <script type="text/javascript" src="{{'{{'}} mix('mdbootstrap/js/jquery-3.3.1.min.js') }}"></script>
    <script type="text/javascript" src="{{'{{'}} mix('mdbootstrap/js/popper.min.js') }}"></script>
    <script type="text/javascript" src="{{'{{'}} mix('mdbootstrap/js/bootstrap.js') }}"></script>
    <script type="text/javascript" src="{{'{{'}} mix('mdbootstrap/js/mdb.js') }}"></script>

    بعد هم دستور

    npm run watch
  • ٢ ماه پیش @tilkacoder به بحث اپلیکیشن جواب داد.

    بله چرا که نه ولی شما باید دانش اولیه رو داشته باشی و بتونی سناریو مورد نظرت رو بنویسی و پیاده سازی کنی.

  • ٢ ماه پیش @tilkacoder به بحث اپلیکیشن جواب داد.

    شما در درجه اول باید در نظر بگیری برنامه شما قرار هست روی چه پلتفرمی اجرا بشه.

    به طور مثال ممکنه شما بخواید زمانی که کاربر روی نسخه موبایل دکمه ثبت را زد این عملیات انجام بشه در نتیجه شما با توجه به سیستم عامل موبایل کاربر باید برنامه رو بنویسید ( به طور مثال برای اندروید با جاوا میتونی همچین کاری رو انجام بدی )

    در قسمت بعد باید این مسئله رو در نظر بگیری میخوای از چه پرینتری استفاده کنی تا بتونی خروجی و کتابخانه مناسب رو پیدا کنی.

    برای اینکه متوجه حرفم بشی یه مثال میزنم :

    من توی یه برنامه تحت وب زمانی که قرار بود از Receipt Printer استفاده کنم با استفاده از js خیلی راحت میتونستم اینکار رو انجام بدم ولی بخاطر مشکلات و مسائلی که وجود داشت مجبور شدم از طریق php این کار رو انجام بدم. برای php با استفاده از کتابخانه escpos-php اینکار رو خیلی راحت انجام دادم.

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

  • کدت هیچ مشکلی نداره و جالبه بدونی موقعیت درستی هم نشون میده

    علت این اختلاف که شما میبینی عدم وجود gps بر روی سیستم شما هست و بر اساس اطلاعات دیگه ای داره این موقعیت رو نمایش میده.

    همین کد اگر بر روی موبایل اجرا بشه و دسترسی داده بشه میبینی که موقعیت درست در حال نمایش است

  • چند وقت قبل مشکلی شبیه به تو داشتم ولی خیلی بزرگتر ( تعداد درخواست، میزان cache و موارد دیگه هم مطرح بود برام ) بعد از کلی تحقیق و راهنمایی به یک راحل رسیدم :

    نیازی نیست از هیچکدوم استفاده کنی :)

    بهترین، بهینه ترین و ساده ترین روش ممکن استفاده از HTML5 SSE هستش.

    لینک کمکی

    کتابخانه های جاوا هم براش وجود داره.

    در رابطه با استفاده از lumen هم باید بگم اگر منابع کافی وجود نداره و نیاز به سرعت بالاتر و همچنین امکانات کلی لاراول رو نمیخوای ازش استفاده کن. lumen در جایی استفاده میشه که نیاز به فریم ورک های سبک و سریع هست. انتقال به lumen برات زمان بر هست و پیشنهاد نمیکنم تا زمانی که با موارد بالا درگیر نشدی.

  • با استفاده از HTML5 Geolocation میتونید این کار رو در javascript انجام بدید

    لینک راهنما

    اینکه دیگه چطور پیاده سازی کنید دسته خودتون هست (‌بر اساس نیاز و منابع)

  • ٢ ماه پیش @tilkacoder به بحث نوشتن event برای هر کامپوننت جواب داد.

    اگر منظورت رو درست متوجه شده باشم باید از Global Event استفاده کنی برای نمونه و کمک میتونی از این لینک کمک بگیری

    اگر برنامه ات بزرگه و با وضعیت ها سروکار داری پیشنهادم اینه از vuex استفاده کنی.

    اگر هم برنامه کوچیکه و حال حوصله اینکارا رو نداری میتونی یک متغییر داخل Instance اصلی بسازی و با استفاده از this.$parent مقدار رو ذخیره کنی ( کار درستی نیست ولی برای برنامه های کوچیک هیچ مشکلی نداره)

  • ٢ ماه پیش @tilkacoder به بحث انتخاب بین php و asp جواب داد.

    به نظرم این مقایسه کاملا اشتباه هست به دلایل زیر :

    1. اینکه شما میخواید کدام زبان را یادبگیرید کاملا به شما بستگی داره و نظر دیگران نه تنها بهتون کمک نمیکنه بلکه ممکنه شما را از برنامه نویسی زده کنه. برنامه برنامه نویس های هر زبانی معمولا شما را به اون زبان دعوت میکنن به طور مثال برنامه نویسان php معمولا میگن php ولی شما باید به ملاک های زیادی که با توجه به شما متغییر هست نگاه کنی به طور مثل :

      • دانسته قبلی ( اگر در دوره تحصیلی C# یاد گرفتید ممکنه یادگیری asp برای شما نتیجه بهتری داشته باشه)
      • حوزه کار ( اگر میخواید از راه برنامه نویسی کسب در آمد کنید باید چیزی رو یادبگیرید که در حال حاضر به نسبت پرکاربرد و درآمد خوبی داشته باشه که معمولا اینجوری موارد ۲-۳ سال پار برجا هستن - در آینده شاید ممکنه شما نیازمند یادگیری موارد دیگه ای باشید)
      • علاقه ( اگر علاقه نداشته باشید معمولا کند پیش میرید و بعد از یک مدت زده میشید)
      • و ... .
    2. مواردی مثل امنیت - سرعت - هزینه (پولی یا رایگان بودن ) - کتابخانه و چنین چیزهای نباید ملاک اصلیتون باشه

    • در رابطه با امنیت شهریار توضیحات خوبی داد و کاملا درسته زبان برنامه نویسی تا بحال دلیل بر هک شدن نبوده وبسایت های بزرگ زیادی وجود دارن که با زبان های مختلف نوشته شدن و هک نشدن و اگر هم اتفاق افتاده به علت مشکل خطا برنامه نویسی بوده.

    • در رابطه با سرعت هم همین رو باید گفت که وبسایت های بزرگ زیادی وجود دارن که با زبان های مختلف نوشته شدن و در بازدید زیاد و پردازش سنگین مشکلی ندارن به علت برنامه نویسی صحیح ( اگر شما پروژه خاصی دارید که باید در شرایط خاص با سرعت مناسب کار کنه اون موقع ممکنه زبان و ساختار برنامه براتون مهم بشه )

    • شما ممکنه هزینه زیادی متحمل بشید برای برنامه نویسی و یادگیری ولی ممکنه در آینده درآمد بالاتری داشته باشید شاید هم بدون هزینه بتونید در آمد بالاتری داشته باشید. به نظرم پس ملاک اصلی نیستند.

    3.علت وجود زبان های مختلف چیه و کدوم رو یادبگیریم ؟

    • این در واقع یکی از سوال های افراد مبتدی هست که با یک مثال به جواب میرسیم توی شهرهایی که زندگی میکنیم رستوران های زیادی وجود دارن.اگر شما گشنه باشید و بخواید برید رستوان و بپرسید که کدوم غذا و قیمت بهتری داره و در جواب گفته بشه یک رستوران غذا بهتری نسبت به بقیه با قیمت مناسب میده شما اون رو انتخاب میکنید. تا اینجا کار هیچ مشکلی وجود نداره ولی اگر شما برید و ببینید که یک صف ۱۰۰ نفری وجود داره و غذاتون ۱ ساعت بعد آماده میشه میگید بریم یه جای دیگه

    • اگر یک زبان به عنوان بهترین باشه مطمئنا یک جامعه بزرگی توش فعال هستن و هر روز این جامعه بزرگتر هم میشه ممکنه در یک زبان دیگه شما درآمد بهتری به علت جامعه کوچکتر داشته باشید.

    موارد زیادی هست که بیان میشه که از حوصله این بحث خارجه.

    نتیجه گیری انتهایی اینه که این کار کاملا اشتباه هست و شما خودتون باید با تحقیق به نتیجه مطلوب برسید.

  • ٢ ماه پیش @tilkacoder به بحث آموزش ویو جواب داد.

    روش تدرس آقای عظیمی (کلا توی هر درسی) به شکل ساده و روان هست و موارد پیچیده هم به شکلی روان تدرس شده.

    فکر نمیکنم مجدد آموزش هارو بسازن ( اگر تاپیک های مشابه رو ببینید جواب اقای عظیمی یکسان هست)

    تمامی موارد در آموزش های Vue بیان شده ، اگر بخشی براتون مبهم هست ویدئو رو مجدد ببینید و اگر باز هم متوجه نشدید به داکیومنت برید یا سرچ کنید. ساخت یک وبسایت مثل پارس کلیک بسیار زمان بر بود و همچنین تمامی موارد تا به امروز آموزش داده شده ( وبسایتی مثل پارس کلیک تنها از Vue استفاده نمیکنند بلکه ترکیبی از فریم ورک ها و ابزارهای مختلف هست)

    همچنین موارد مهم دیگه ای وجود دارند که ساخت آموزش برای آنها در حال حاضر اولویت بیشتری دارند.

  • ٣ ماه پیش @tilkacoder مقاله ای به اسم استاندارد برنامه نویسی کنیم (مقدمه) را لایک کرد.
  • ٣ ماه پیش @tilkacoder به بحث کمک در مورد کد جستجو در سایت جواب داد.

    من یک نمونه کد ساده براتون میزارم تا منطق برنامه براتون جا بیوفته

    این کد از نظر امنیتی درست نیست برای نمونه امکان تزریق فیلد های مختلف وجود داره. اول یک کوئری ساده مینویسی بعد بر اساس پارامتر هایی که به صورت get ارسال شدن bind میکنی بعد از ساخت ارایه در زمان آماده سازی با استفاده از implode شرط رو به صورت کامل میسازی ( شرط به صورت AND هست )

    $query = "SELECT * FROM joke WHERE TRUE";
    $bind = [ ];
    $conds = [ ];
    
    if ($_GET)
    {
        if ($_GET["text"] && $_GET["text"] != "") {
          $conds[] = "joke_text like :joke_text";
          $bind[':joke_text'] = "%{$_GET['text']}%";
        }
    
        if ($_GET["author"] && $_GET["author"] != "") {
          $conds[] = "author_id = :author_id";
          $bind[':author_id'] = "{$_GET['author']}";
        }
    
        $stmt = $dbConnection->prepare($query . ($conds ? " WHERE " . implode(" AND ", $conds) : "");
        $stmt->execute($bind);
        $rows = $stmt->fetchAll();
    
        var_dump($rows);
    }

    باید تعداد فیلد ها مشخص تعریف بشه بعد بر اساس اون بایند انجام بدی

    میتونی فیلد هارو داخل یک ارایه بریزی و با استفاده از یک حلقه بایند رو انجام بدی

  • ٣ ماه پیش @tilkacoder مقاله ای به اسم عینک مناسب برنامه نویسان را لایک کرد.
  • Material UI فوق العاده است.

    فقط چند نکته رو در اینجا مطرح میکنم که شاید به دوستان کمک کنه‌ :

    حتما قبل از وارد کردن تنظیمات از تنظیمات قبلی بک اپ بگیرید چون ممکنه روی سیستم شما مشکلاتی به وجود بیاد

    با توجه به اینکه کل تنظیمات بک اپ گرفته شده یعنی حتی اطلاعات گیت (بجز پسورد ها) و اکانت Jetbrain تمامی موارد رو باید به روز رسانی کنید.

    اگر سیستم عامل مک ندارید بهتره این تنظیمات رو وارد سیستمتون نکنید چون تمامی تنظیمات مک بر روی خروجی قرار داره و تنظیمات شما بهم میریزه.

    دکمه های زیادی از کار میوفته چون شما دکمه command ندارید برای همین مجبورید keymap هارو reset کنید

    همچنین مسیر هایی که امیر برای برنامه تعریف کرده ممکنه بر روی سیستم شما فرق کنه و باید به روز رسانی بشه(مثل git).

  • ٣ ماه پیش نویسنده @tilkacoder یک مقاله تازه به اسم عینک مناسب برنامه نویسان نوشت.