فرشید مرادی
3 سال پیش توسط فرشید مرادی مطرح شد
10 پاسخ

دو سئوال در مورد livewire

سلام وقت بخیر
اولین مشکلم در لایو وایر این هست که چطور میتونم فایل master پیش فرض رو جدا کنم ، یعنی اینکه فرض کنید شما ویو های سمت پنل ادمین دارید و یو های سایت اصلی حالا master page این دو باید مسلما متفاوت باشند و یا حتی بعضی از ویو ها master نداشته باشند چطور این کار ممکن هستش؟
و سئوال دوم قصد دارم یک آرایه رو به صورت real time ولیدیشن کنم فقط میدونم متد updated برای یک پراپرتی قابل ولیدیشن شدن هستش به این صورت : validateonly


ثبت پرسش جدید
محمد رضا
تخصص : Full Stack Developer
@salar.mohammad2013 3 سال پیش مطرح شد
0

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

در رابطه با سوال دومت نیاز هست که از wire:model استفاده کنی
کارش به اینصورته که یک مدل یا یک پراپرتی توی کامپوننت لایو وایری خودت تعریف میکنی و یک ولیدیشن کلی برای پراپرتی هات مشخص میکنی با هر بار تغییر که خودت میگی چه تغییری مد نظرته میاد و مقدار اون متغییر تغییر میکنه و ولیدیشنت هم انجام میشه.

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


محمد رضا
تخصص : Full Stack Developer
@salar.mohammad2013 3 سال پیش مطرح شد
0

برای سوال اول شما هم بحثی داره به اسم layout که میتونی توی اون مشخص کنی مستر پیجت چیه
به صورت کلی هم توی config > livewire > layout میونی مقدارش رو تغییر بدی که فک کنم باید publish کرده باشیش قبلا


فرشید مرادی
تخصص : noob
@eniack 3 سال پیش مطرح شد
0

@salar.mohammad2013
سلام وقت بخیر ،
منم دارم طبق آموزش های جناب موسوی جلو میرم با این تفاوت که دارم همزمان باهاش پروژه میزنم و این مباحث رو متاسفانه ایشون بیان نکردن و سوال بنده رو فعلا جواب ندادن ، ببینید ما یک masterpage کلی داریم واسه ی پروژه اما ویو های سمت ادمین و سایت نیازمند masterpage جدا هستند و سوال دوم این چیزی که شما فرمودید بازهم برای یک پراپرتی میشه من تمام اینپوت هایی که ارسال میکنمو میخوام ولیدیشن همزمان داشته باشم


محمد رضا
تخصص : Full Stack Developer
@salar.mohammad2013 3 سال پیش مطرح شد
0

ببینید
تا جایی که من اطلاع دارم توی همون config >livewire فقط یدونه مستر اصلی داریم
ینی دوتا اونجا فکر نکنم بشه تعریف کرد ولی
طبق چیزی که فرستادم برات برای هر مسیر میتونی جداگانه توی render بگی که layout اون کجاست و صد تا مستر میتونی داشته باشی
اما برا هر component لایو وایری که ایجاد میکنی مجبوری مشخص کنی که از اون چیز دیگه ای که ند نظرته استفاده کنه
حالا group و دسته بندیش رو اطلاع ندارم.

در رابطه با این که اصلا مستر نداشته باشه هم اره هیچ مشکلی نداره
فقط اون صفحه blade معمولی ایی که داری و livewire نیست خیلی راحت توش <liveiwer:urlivewireAddress /> بزار
ینی مثل لایو وایری که داخل یک لایو وایر دیگه مهندس قرار میده برات توی ویدیو ها
به همون شکل توی یک صفحه ساده فراخوانی کن اون livwewire رو فرق نداره و اینجوری اصلا نیاز به layout هم نداره اون لایو وایر چون اصلا route براش تعریف نشده


محمد رضا
تخصص : Full Stack Developer
@salar.mohammad2013 3 سال پیش مطرح شد
0

در رابطه با ولیدیشن هم ویدیو های مهندس کلا ده ساعته
یک بار توی یک یا دوروز سریع تا اخر ببین ک بدونی چه امکاناتی داره اگر وقت نداری
ولی هر جوری بقوای این مدل برات اعتبار سنجی انجام میده
بعد از submit نهایی فرم
با رویداد keyup با تغییر مثل blur توی جی کوِئری
اعتبار سنجی تکی یا همه باهم همه رو داره این model لینکش رو قرار داده بودم ببین
توی متد rules تعریف میشه اعتبار سنجی کلی برای مدل ها


فرشید مرادی
تخصص : noob
@eniack 3 سال پیش مطرح شد
0

@salar.mohammad2013
مشکل اینه که layout فقط برای index جواب میده و برای بقیه روت ها برمیگرده به همون app اصلی🤕


محمد رضا
تخصص : Full Stack Developer
@salar.mohammad2013 3 سال پیش مطرح شد
0

app اصلی توی config مشخص میشه
و متوجه منظورتون که فقط روی index جوام میده نشدم
ب جای route توی کامپوننت لایو وایری و توی render قرار بدید layout رو
چندین راه نشون داده سایت
یکی کانفیگ
یک رندر
یکی روت اگر اشتباه نکنم.
من خودم بدون master هم قرار دادم و با master و تغییر دونه ای master تست کردم موردی نداره که.
سایت اصلی livewire نیاز به تحری.م شکن داره.

class ShowPosts extends Component
{
    ...
    public function render()
    {
        return view('livewire.show-posts')
            ->layout('layouts.base');
    }
}

فرشید مرادی
تخصص : noob
@eniack 3 سال پیش مطرح شد
0

ببینید من از قسمت config->livewir.php و این کدو // 'layout' => 'layouts.app', کلا برداشتم اما تغییری ایجاد نشد.
و اینکه میگم فقط برای index جواب میده

 public function render()
    {
        return view('livewire.home.index')->layout('layouts.master');
    }

این الان مستر پیجش عوض شده اما بقیه روت ها با اینکه کد layout رو میزارم بازم مسترپیج قبلی رو نمایش میده

 public function render()
    {
        return view('livewire.home.login')->layout('layouts.master');
    }

محمد رضا
تخصص : Full Stack Developer
@salar.mohammad2013 3 سال پیش مطرح شد
0

یک بار cache و config و route و view رو هم clear بزن.
و اینکه اون کد رو پاک نکن از کانفیگ بزار باشه اگر نمیخوایی عوضش کن


میلاد خسروی
تخصص : برنامه نویس بامزه
@milwad 3 سال پیش مطرح شد
-1

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


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام