روز های سخت هفته گذشته…

سلام

روز شما بخیر. امیدوارم که خوب باشید.

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

داشتم به این فکر میکردم هفته پیش چه روز های سخت و پر اضطرابی رو از سر گذروندم ادامه خواندن روز های سخت هفته گذشته…

بررسی و حل خطای Unexpected reserved word ‘await’ در یاکت React

سلام سلام

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

خب بریم سراغ خطای Unexpected reserved word ‘await’ در ریاکت.

این خطا داره به این اشاره میکنه که در جایی که صحیح نیست شما از کلمه رزرو شده await استفاده کردید. میشه اینطور در نظر گرفت تابع اسکوپ شما این کلمه رو نمیشناسه. دلیلش چی میتونه باشه؟ async رو برای اسکوپ تابعتون تعریف نکردید احتمالا یا به درستی تعریف نشده. پس برگردیم کمی عقبتر و یه نگاه کنیم که چطور تابع async خودمون رو تعریف کردیم.
امیدوارم زود پیداش کنید.

موفق باشید

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

سلام

خیلی وقتا میخوایم ۲ فایل یا ۲ برنچ رو با هم مقایسه کنیم در گیت البته. امروز من همین نیاز رو داشتم و خب قبلا با meld کار کرده بودم ولی اینکه بخواد ۲ تا برنچ رو مقایسه کنه همچین گزینه ای پیدا نکردم. با یکم سرچ به این نتیجه رسیدم:

اول meld رو بعنوان ابزار نمایش تفاوت ها تنظیم میکنیم:
git config –global diff.tool meld

بعد در کامند لاین برای دیدن تفاوت های دو برنچ از دستتور زیر استفاده میکنیم. فرض کنین الان تو برنچ ABC هستیم میخوایم بنچمون رو با برنچ XYZ مقایسه کنیم دستور زیر رو تایپ میکنیم:

git difftool -d XYZ

خطای داکر ERROR: for x Cannot start service driver failed programming external connectivity on endpoint starting userland address already in use. Encountered while bringing up the project

امروز با خطای زیر در داکر مواجه شدم:
ERROR: for mariadb Cannot start service mariadb: driver failed programming external connectivity on endpoint xxx-mariadb (4ae610xxxx6564937f07288c50068xxx2b5031d495fbbe085d812b37): Error starting userland proxy: listen tcp4 127.0.0.1:3306: bind: address already in use
ERROR: Encountered errors while bringing up the project.

سرچ کردم گفتم بد نیست برای خودم یاداشتی بذارم. اول تصور میکردم یه سرویسی داره ۲ بار ران میشه ولی هرچی گفتم کدی پیدا نکردم. سرچ که کردم دیدم تو سایت دوست stackoverflow دیدم قبلا هم همین سوال رو داشتم و امتیاز مثبت داده بودم. دلیلش این بود سروریس دیگه ای روی سیستمم داشت از همین پورت استفاده میکرد. ممکنه این اتفاق بدلیل یک کانتینر دیگه هم رخ بده. پس چک کنید کدوم برنامه داره از اون پورت شما استفاده میکنه.

 
 

 

 

تکنیک آس (آگاه سازی)

سلام سلام

میخوام یه تکنیکی بهتون یاد بدم برای حل مسائل زندگیتون که متناوب تکرار میشن. همه ما تو زندگی مسائلی داریم که مثل سنگ های تو جاده سد راه موفقت و رسیدن ما به اهدافمون میشن. برای من این سنگ ها در کسب و کار کم نبودن. در موقعیت هایی قرار میگرفتم که نمیدونستم چیکار کنم و مکانیزم های قدیم زندگی که بصورت ناخودآگاه از کودکی استفاده میکردم (میکنیم) اکثرا جواب نمیدن و ما نیاز داری راهکار های جدیدی برای روبرو شدن با شرایط های مختلف که بروز مسئله میکنن پیدا کنیم. برای من مسیر موفقت در کسب و کار خیلی پر چالش بود و هیجانات شدیدی رو تجربه میکردم. سالها مشاوره های مختلف رفتم، طرحواره درمانی رفتم، گروه درمانی رفتم و کتابها و مقالات مختلف روانشناسی و مدیریت زمان خوندم، خیلی کمکم کردند ولی گره هایی در کار کردنم بود که از باز کردنشون عاجز بودم. بذارین بگم بهترین مشاور، در درونتونه. پاسخ همه سوالها رو خودتون میدونید. با خودتون عادلانه و سخت گیرانه صادق باشید. من راهکاری برای خودم پیدا کردم که مطمئنا به درد شما هم میخوره ولی الزاما نه! الگو بگیرید و مسیر خودتون رو بسازید. من هم از مشاوره ها، کتابها و… الگو گرفتم و داروی درد خودم رو ساختم. ادامه خواندن تکنیک آس (آگاه سازی)

رفع خطای داکر Got permission denied while trying to connect to the Docker daemon socket

Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get “http://%2Fvar%2Frun%2Fdocker.sock/v1.24/containers/json”: dial unix /var/run/docker.sock: connect: permission denied

فقط دستور زیر را اجرا کنید.
sudo chmod 666 /var/run/docker.sock

یه تغییر تو کامیت قبلی جا مونده؟ نگران نباش!

تا حالا پیش اومده یه چیزی رو کامیت کنین… چند تا کامیت هم بگذره بعد یادتون بیاد ای داد بیداد فلان چیزو یادم رفت تو اون کامیت اولیه ادد کنم؟ نگران نباشین راه حل داره.

تو برنچی که هستین (برنچ آخر) تغییراتتون رو اعمال کنین و:
git add -A
یا حالا فایل یا دایرکتوری میخواین اضافه کنین دستورشو خودتون میدونین دیگه.
بعد گیت لاگ بگیرین و هش اون کامیت رو در بیارین. و دستور زیر رو بزنین:
git commit –fixup=اون‌هش
و بعد:
git rebase –interactive –autosquash OLDCOMMITHASH^

همین. دنبال همچین چیزی بودم گیر ریبیس افتادم که گیت استاتوس میگرفتم میزد وسط ریبیس هستی. اگر شمام همچین چیزی داری کد زیر رو بزنین ریبییس رو میبنده:
git rebase –abort
البته اینو بهتره قبل همه کدای بالا بزنین.

موفق باشید

مشاهده ایندکس ها یا فهرست ها و جستجو در کیبانا – الستیک‌سرچ

برای لیست کردنایندکس ها در الستیک سرچ یا کیبانا از دستور زیر استفاده کنید

GET _cat/indices

GET cars/_search
{
“query”: {
“bool”: {
“must”: [
{
“term”: {
“cars.city.slug”: “tehran”
}
}
]
}
}
}

خطای الستیک سرچ error root_cause type parsing_exception reason term query does not support array of values

سلام دوستان

خطای زیر در الستیک سرچ elasticsearch اگر دریافت کردین:

error root_cause type parsing_exception reason term query does not support array of values

دقت کنین احتمالا از کلمه کلیدی term استفاده کردین. ولی برای جستجوی لیست یا آرایه ای نیازه از terms استفاده کنید نه term.

'query' => [
    'bool' => [
        'should' => [
            [
                'terms' => [
                    'ids' => $ids,
                ],
            ],
        ],
    ],
],

این دستورات معادل کوئری زیر در sql هستند

OR WHERE id in ([1,2,3,4,5])

 

خطای Target … is not instantiable while building در لاراول

اگر به این خطا برخوردید. Target [Module\\Doctor\\Contract\\RepositoryInterface] is not instantiable while building واضحه دلیلش بایند نشدن اینترفیس به کلاس اصلیه اونه.

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