Rhomobile:从表格中没有发布任何参数

时间:2012-06-19 17:33:24

标签: ruby rhomobile rhodes

我有一个简单的表格,我想用它来搜索姓氏:

<form method="POST" action="<%= url_for :action => :index %>">
  <label for="surname" class="itemLabel">Search Surname</label>
  <input type="text" id="surname" name="surname" class="" <%= placeholder("Surname") %> />
  <input type="submit" value="Search"/>
</form>

在控制器索引方法中,我有以下代码:

def index   
    if @params['surname'].nil? or @params['surname'].empty?
      @fencers = Fencer.find(:all) 
    else
      @fencers = Fencer.find(:all, :conditions => {:surname => @params['surname']})
    end
    render :back => '/app'
end

如果它有一个姓氏参数,那么它会搜索,如果不是,它只会显示所有可用的。当我调试此操作时,在发布搜索表单后调用它时,我从未看到任何参数。

此搜索表单基于自动生成的登录表单(有效),所以我有点困惑。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

尝试在控制器中发布不同的操作,或将索引操作重命名为[model] _index。

Rhodes似乎想把传递给索引操作的查询参数搞得一团糟。

我使用您的代码进行了快速测试,如果您将控制器方法更改为“index_new”,则会成功传递参数。