اصول اولیه
زرتشت یک پنل ادمین هست که می توان باهاش "resource" ساخت .
ایجاد Resource
بصورت پیشفرض در زرتشت هر Resource در مسیر app/Zoroaster/Resources
ثبت می شند.
برای ساخت Resource جدید کد زیر رو در terminal اجرا کنید .
php artisan Zoroaster:resource Post
اساسی ترین ویژگی یک Resource، ویژگی Model آن است. برای مشخص کردن آن بصورت زیر اقدام کنید :
/**
* مربوطه Model نام
*
* @var Model
*/
public static $model = 'App\Post';
حالا Resource ساخته شده و فقط داری فیلد ID
هست . نگران نباشید الان به فیلد های دیگم می رسیم .
ثبت Resources
بصورت خودکار
به طور پیش فرض، تمام Resources موجود در پوشه app/Zoroaster/Resources
به طور خودکار ثبت می شوند. شما لازم نیست که آنها را به صورت دستی ثبت کنید
همانطور که در بالا توضیع داده شده، شما مجبور نیستید resources
خود را ثبت کنید؛ با این حال، اگر شما تصمیم به انجام این کار دارید بصورت زیر اقدام کنید.
برای ثبت resources
دو روش وجود دارد یکی بصورت پوشه resourcesIn
, دیگری بصورت تکی
یا گروهی resources
حالا به ServiceProvider
خود رفته ترجیحا ZoroasterServiceProvider
باشد. و از کدای زیر استفاده کنید .
use App\Zoroaster\Resources\User;
use App\Zoroaster\Resources\Post;
Zoroaster::resourcesIn(app_path('Zoroaster/Resources'));
Zoroaster::resources([
User::class,
Post::class,
]);
// OR
Zoroaster::resources(User::class);
Zoroaster::resources(Post::class);
اضافه کردن لینک Resource به Sidebar
وقتی resources
خود را ثبت می کنید برای نمایش دادن آن در Sidebar کناری بصورت زیر اقدام کنید
اول به مسیر app\Zoroaster\Other\Sidebar
رفته و داخل بخش Menu
کد زیر رو قرار دهید .
use KarimQaderi\Zoroaster\Sidebar\FieldMenu\MenuItem;
use App\Zoroaster\Resources\User;
use App\Zoroaster\Resources\Post;
use App\User as ModelUser;
/**
* قسمت منوی اصلی سایت
*
* @return array
*/
public static function Menu()
{
return [
MenuItem::make()->resource(Post::class)->icon('list') ,
MenuItem::make()->resource(User::class)->icon('users')->badge(ModelUser::count()) ,
];
}