Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails RubyonRails-充当标记-更改param:keyword的名称_Ruby On Rails_Keyword_Acts As Taggable On_Param - Fatal编程技术网

Ruby on rails RubyonRails-充当标记-更改param:keyword的名称

Ruby on rails RubyonRails-充当标记-更改param:keyword的名称,ruby-on-rails,keyword,acts-as-taggable-on,param,Ruby On Rails,Keyword,Acts As Taggable On,Param,我想知道在使用acts作为标记时是否/如何更改param:关键字的名称 今天,我的url如下所示: http://www.foo.bar/tagged?keyword=baz 我想把“关键字”改成另一个词 控制器 def tagged @current_keyword = params[:keyword] @tags = FeedEntry.tag_counts_on(:keyword) @tagged_feed_entries = FeedEntry.tagged

我想知道在使用acts作为标记时是否/如何更改param:关键字的名称

今天,我的url如下所示:

http://www.foo.bar/tagged?keyword=baz
我想把“关键字”改成另一个词

控制器

  def tagged
    @current_keyword = params[:keyword]
    @tags = FeedEntry.tag_counts_on(:keyword)
    @tagged_feed_entries = FeedEntry.tagged_with(params[:keyword]).order("published_at desc").paginate :page => params[:sida]
  end
查看:

 <table class="table table-striped">
    <tbody>
    <% if @tags %>

        <% @tagged_feed_entries.each do |feed_entry| %>
            <tr>
              <td>
                <% today = Date.today %>
                <% if (today === feed_entry.published_at.to_date) %>
                    <span class="label label-success">
                <% else %>
                    <span class="label">
                <% end %>
                <%= format_stamp_to_date(feed_entry.published_at) %>
                kl:
                <%= I18n.localize(feed_entry.published_at, :format => '%H:%M') %>
                </span>


              </td>
              <td><%= link_to feed_entry.name, feed_entry_path(feed_entry) %></td>
            </tr>
        <% end %>

    <% end %>
    </tbody>
  </table>

  <%= will_paginate @tagged_feed_entries, :param_name => :sida %>

吉隆坡:
“%H:%M”)%%>
:sida%>

您应该能够将
params[:关键字]
的所有实例替换为
params[:任意]
。然后,您的路径变为
http://www.foo.bar/tagged?whatever=baz


如果您有搜索表单,您还必须在那里进行相关更改。

您的控制器/视图代码是什么样子的?@xnm我已经更新了我的问题,谢谢!)当我这样做的时候,我面临的问题是,我以前所有的“关键词”都消失了。。。如何将旧关键字与新参数匹配?或者是否需要将旧关键字转移/重命名到数据库中具有我的参数名称的新行?这应该不会影响您的记录,除非您正在更改
FeedEntry。标记也会计算(:关键字)
。此外,尽管不需要重命名列,这可能是最佳实践,并允许您执行批量分配(
FeedEntry.create(params[:feed_entry])
,例如)