我确定这将是一个愚蠢的问题,因为它似乎很明显,但我花了太长时间寻找答案。我使用了Slim 2.6,雄辩和细枝,我有点生气。
我正在为我在大学工作的现有的,但仍然非常基本的化学品库存管理系统工作,并且只想添加搜索功能。我有路由本身工作,所以如果我键入追加到url / find / mySearchTerm它完全按预期工作,但我无法弄清楚如何将搜索词传递/拉入路线。
这是我的路线,手动工作正常:
$app->get('/find/:searchterm', function($searchterm) use ($app) {
$chemicals = $app
->chemical
->where('item', 'LIKE', "%$searchterm%")
->orWhere('catalogue', 'LIKE', "%$searchterm%")
->get();
});
我可以使用javascript或DOM或其他东西来拉动字段的文本并将其添加进去,但这看起来并不像......苗条/雄辩/ twig方式。
<form method='post' action ="{{ urlFor('search', { searchterm: searchterm } ) }}">
Search: <input type='text' name='searchterm' />
任何建议都表示赞赏。希望我不会错过任何明显的东西。
答案 0 :(得分:0)
所以我终于实现了我想做的事情,而且我绝对是在思考问题。我添加了主要邮寄路线并从表格提交中调用,而不是直接“搜索”并传递从邮件请求中检索到的搜索词。搜索路线与上述相同
<form method='post' action ="{{ urlFor('home.search' ) }}">
我的帖子方法
$app->post('/', function() use ($app) {
$request = $app->request;
$searchterm = $request->post('searchterm');
$app->response->redirect($app->urlFor('search', [
'searchterm' => $searchterm
]));
})->name('home.search');