Документации на сайте немного не хватает (http://fatfreeframework.com/routing-engine). Я хочу использовать сокращенное выражение POST:
$f3->route('POST /login','Auth::login');
Как вы отправляете параметры в функцию Auth-> login () выше?
Это альтернативный способ написания, но немного дольше:
$f3->route('POST /login',
function($f3) {
$params = $f3->get('POST');
$Auth = new Auth;
$Auth->login($params['username'], $params['password']);
}
);
Если вы имеете в виду, что Auth::login
должен автоматически получить данные POST в качестве аргумента, тогда вы не можете.
Все обработчики маршрута F3 получают следующие аргументы:
Увидеть Вот для примера.
Во всяком случае, если Auth->login
функция, на которую вы ссылаетесь, является один включен в рамки, тогда это не могло работать каким-либо образом, так как login()
функция не является обработчиком маршрута. Просто возвращается TRUE
или же FALSE
, Обработчик маршрута должен сделать немного больше: например, перенаправить пользователя в случае успеха или снова отобразить форму входа в систему при ошибке.
Пытаться:
$f3->route('POST /login',
function($f3,$params) {
$Auth = new Auth;
$Auth->login($params['username'], $params['password']);
}
);