如何使用Catalyst从我的数据库中搜索,选择和显示条目

时间:2013-09-15 19:19:53

标签: sqlite controller catalyst dbix-class

我必须使用Catalyst来创建数据库并通过浏览器访问它。 我使用DBIx-class和sqlite创建了一个非常简单的数据库,只有一个表并用一些记录填充它。 我已经设法使用Template Toolkit视图模块和下面的代码将整个表及其行显示在我的控制器中。

$c->stash(ptm => [$c->model('DB::ptm')->all]);

现在我创建了一个简单的搜索框,以便搜索数据库并显示与关键字匹配的任何条目,但我不知道如何将关键字传递给我的控制器,也不知道如何实现子程序以便实现这一目标。

我搜索了三天以上没有找到任何解决方案。

1 个答案:

答案 0 :(得分:0)

这里有两个完全不同的问题。

  1. 在Catalyst
  2. 中接受参数
  3. 在DBIC中执行搜索
  4. 所以,从第一个开始。 Reading a query string

    $c->request->query_parameters->{field}
    

    然后执行搜索。只需拨打search而不是all,然后传递列和值的hashref。

    $c->model('DB::ptm')->search( { 'name' => $tag } );