public function childControllerTemplate()
{
$content = <<<EOD
<?php
namespace App\\Http\\Controllers;
use Illuminate\\Http\\Request;
use App\\Http\\Requests;
:::useModel:::;
:::useParent:::;
use Illuminate\\Support\\Facades\\Redirect;
class :::upperCaseModelName:::Controller extends Controller
{
/**
* Display a listing of the resource.
*
* @return \\Illuminate\\Http\\Response
*/
public function index()
{
return view(':::modelPath:::.index');
}
/**
* Show the form for creating a new resource.
*
* @return \\Illuminate\\Http\\Response
*/
public function create()
{
\$:::parentInstances::: = :::parent:::::orderBy(':::parentFieldName:::', 'asc')->get();
return view(':::modelPath:::.create', compact(':::parentInstances:::'));
}
/**
* Store a newly created resource in storage.
*
* @param \\Illuminate\\Http\\Request \$request
* @return \\Illuminate\\Http\\Response
*/
public function store(Request \$request)
{
\$count = :::parent:::::count();
\$this->validate(\$request, [
':::field_name:::' => 'required|unique::::tableName:::|string|max:30',
':::parent_id:::' => "required|numeric|digits_between:1,\$count"
]);
\$:::modelInstance::: = :::upperCaseModelName:::::create([':::field_name:::' => \$request->:::field_name:::,
':::parent_id:::' => \$request->:::parent_id:::]);
\$:::modelInstance:::->save();
return Redirect::route(':::modelPath:::.index');
}
/**
* Display the specified resource.
*
* @param int \$id
* @return \\Illuminate\\Http\\Response
*/
public function show(\$id)
{
\$:::modelInstance::: = :::upperCaseModelName:::::findOrFail(\$id);
\$:::parentInstance::: = \$:::modelInstance:::->:::parentInstance:::->:::parentFieldName:::;
return view(':::modelPath:::.show', compact(':::modelInstance:::', ':::parentInstance:::'));
}
/**
* Show the form for editing the specified resource.
*
* @param int \$id
* @return \\Illuminate\\Http\\Response
*/
public function edit(\$id)
{
\$:::modelInstance::: = :::upperCaseModelName:::::findOrFail(\$id);
\$:::parentInstances::: = :::parent:::::orderBy(':::parentFieldName:::', 'asc')->get();
\$oldValue = \$:::modelInstance:::->:::parentInstance:::->:::parentFieldName:::;
\$oldId = \$:::modelInstance:::->:::parentInstance:::->id;
return view(':::modelPath:::.edit', compact(':::modelInstance:::', ':::parentInstances:::', 'oldValue', 'oldId'));
}
/**
* Update the specified resource in storage.
*
* @param \\Illuminate\\Http\\Request \$request
* @param int \$id
* @return \\Illuminate\\Http\\Response
*/
public function update(Request \$request, \$id)
{
\$count = :::parent:::::count();
\$this->validate(\$request, [
':::field_name:::' => 'required|string|max:40|unique::::tableName:::,:::field_name:::,' .\$id,
':::parent_id:::' => "required|numeric|digits_between:1,\$count"
]);
\$:::modelInstance::: = :::upperCaseModelName:::::findOrFail(\$id);
\$:::modelInstance:::->update([':::field_name:::' => \$request->:::field_name:::,
':::parent_id:::' => \$request->:::parent_id:::
]);
\$:::parentInstance::: = \$:::modelInstance:::->:::parentInstance:::->:::parentFieldName:::;
return Redirect::route(':::modelPath:::.show', [':::modelInstance:::' => \$:::modelInstance:::,
':::parentInstance:::' => \$:::parentInstance:::
]);
}
/**
* Remove the specified resource from storage.
*
* @param int \$id
* @return \\Illuminate\\Http\\Response
*/
public function destroy(\$id)
{
:::upperCaseModelName:::::destroy(\$id);
return Redirect::route(':::modelPath:::.index');
}
}
EOD;
return $this->tokenBuilder->insertTokensIntoContent($content);
}