So I have the following route configured that when I visit URL/employees/import
it works great and the functionality does what I need it to do:
Route::get('employees/import', [
'as' => 'employees.import',
'uses' => 'EmployeesController@import'
]);
Here is the EmployeesController
class:
class EmployeesController extends Controller
{
protected $employeeImporter;
public function __construct(EmployeeImporter $employeeImporter)
{
$this->middleware('auth', ['except' => ['import']]);
$this->employeeImporter = $employeeImporter;
}
public function index()
{
$employees = Employee::all();
return view('employees.index', compact('employees'));
}
public function show(Employee $employee)
{
return view('employees.show', compact('employee'));
}
public function update(EmployeeRequest $request, Employee $employee)
{
$employee->update($request->all());
if (count($request->files) > 0) {
$employee->touch();
}
return redirect()->route('employees.show', $employee->id);
}
public function import()
{
$this->employeeImporter->import();
}
}
What I'm attempting to achieve:
So since the default call is employees/import
- How can I make it be based on a query string? So I'd like the default to be employees/import?mode=update
, but also have the option to have employees/import?mode=refresh
that depends on another method inside the class?
All help would be appreciated! Learning and new to Laravel.
via Chebli Mohamed
Aucun commentaire:
Enregistrer un commentaire