اضافه کردن use model داخل blade

3 سال پیش توسط bardia مطرح شد
آفلاین
user-avatar
bardia ( 22926 تجربه )
3 سال پیش
تخصص : Golang/Laravel

لینک کوتاه اشتراک گذاری

0

من میخوام مدل خودمو توی blade صدا بزنم
مثلن به صورت زیر میخوام صدا بزنم خطا میده


@php
use App\node
@endphp
آفلاین
user-avatar
mahdi khanzadi ( 101246 تجربه )
3 سال پیش
تخصص : backend developer at Snapp market

لینک کوتاه اشتراک گذاری

1

میتونید مدل رو داخل view وارد کنید و از inject استفاده کنید.

@inject('model','App\User');
@php
dd($model::all());
@endphp

با توجه به مثال بالا میتونید اینکار رو انجام بدید

آفلاین
user-avatar
bardia ( 22926 تجربه )
3 سال پیش
تخصص : Golang/Laravel

لینک کوتاه اشتراک گذاری

0

@khanzadimahdi
من یه چنین دستوری توی blade دارم
اما خطای زیر رو میده
syntax error, unexpected 'use' (T_USE)


 @foreach ($hop_path0 as $record0)
                        @php
                        use \App\listinfo;
                        use \App\connection_neo4j;
//your code....
@php 
@endforeach
آفلاین
user-avatar
mahdi khanzadi ( 101246 تجربه )
3 سال پیش
تخصص : backend developer at Snapp market

لینک کوتاه اشتراک گذاری

1

کلا استفاده از use برای معرفی namespace هست در اینجا استفاده ای نداره. یا باید new کنی یا inject کنی.

@foreach ($hop_path0 as $record0)
    @php
        $listinfo=new App\listinfo;
        $connection=new App\connection_neo4j;
    @php 
@endforeach

بهتره که از inject استفاده کنی تا کد تمیز تر بشه

@foreach ($hop_path0 as $record0)
    @inject('listinfo','App\listinfo')
    @inject('connection','App\connection_neo4j')
@endforeach

اگه مدل رو به view اظافه کنی برنامه از مدل MVC خارج میشه و به MVVM تبدیل میشه (گفتم در جریان باشی).

برای ارسال پاسخ لازم است، ابتدا وارد سایت شوید.