sublime-settings/Packages/User/laravel_controller.sublime-snippet

84 lines
2.8 KiB
XML

<snippet>
<content><![CDATA[
use App\Models\${1:MODEL};
use Inertia\Inertia;
public function index(Request \$request)
{
\$data = [
'${2:models}' => ${1:MODEL}::where('user_id', \$request->user()->id)->paginate(),
];
return Inertia::render('${2:models}/Index')->with(\$data);
}
public function show(${1:MODEL} \$${3:model})
{
\$data = [
'${3:model}' => \$${3:model},
];
return Inertia::render('${2:models}/Show')->with(\$data);
}
public function create()
{
\$data = [];
return Inertia::render('${2:models}/Create')->with(\$data);
}
public function store(Request \$request)
{
\$${3:model} = new ${1:MODEL}();
// assign model fields
if (\$${3:model}->save()) {
\$request->session()->flash('flash', ['bannerStyle' => 'success', 'banner' => "Successfully added {\$${3:model}->${4:field}}."]);
return redirect()->route('dashboard.${2:models}.index')->with('status', "Successfully added {\$${3:model}->${4:field}}.");
}
\$request->session()->flash('flash', ['bannerStyle' => 'danger', 'banner' => "Unable to save that ${3:model}."]);
return redirect()->back()->with('error', 'Unable to save that ${3:model}.');
}
public function edit(Request \$request, ${1:MODEL} \$${3:model})
{
\$data = [
'${3:model}' => \$${3:model},
];
return Inertia::render('${2:models}/Edit')->with(\$data);
}
public function update(Request \$request, ${1:MODEL} \$${3:model})
{
// assign model fields
if (\$${3:model}->update()) {
\$request->session()->flash('flash', ['bannerStyle' => 'success', 'banner' => "Successfully updated {\$${3:model}->${4:field}}."]);
return redirect()->route('dashboard.${2:models}.index')->with('status', "Successfully updated {\$${3:model}->${4:field}}.");
}
\$request->session()->flash('flash', ['bannerStyle' => 'danger', 'banner' => "Unable to update ${3:model}."]);
return redirect()->back()->with('error', "Unable to update {\$${3:model}->${4:field}}.");
}
public function destroy(Request \$request, ${1:MODEL} \$${3:model})
{
\$${4:field} = \$${3:model}->${4:field};
if (\$${3:model}->delete()) {
\$request->session()->flash('flash', ['bannerStyle' => 'success', 'banner' => "Successfully removed {\$${4:field}}."]);
return redirect()->route('dashboard.${2:models}.index')->with('status', "Successfully removed {\$${4:field}}.");
}
\$request->session()->flash('flash', ['bannerStyle' => 'danger', 'banner' => "Unable to remove {\$${4:field}}."]);
return redirect()->back()->with('error', "Unable to remove {\$${4:field}}.");
}
]]></content>
<!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
<tabTrigger>laracontroller</tabTrigger>
<!-- Optional: Set a scope to limit where the snippet will trigger -->
<!-- <scope>source.python</scope> -->
</snippet>