2017-10-09 4 views
-1

J'utilise la gem acts_as_taggable et je veux taguer en utilisant hashtags #. Cependant, dans l'URL, il ressemble à ceci: http://localhost:3000/tags/%23tagnameRails tag URL montrant laid "% 23"

Comment puis-je faire de telle sorte qu'elle montre que #tagname dans l'URL navigateur barre% au lieu de 23?

routes.rb

get 'tags/:tag', to: 'posts#index', as: :tag 

new.html.erb

<%= f.label :tag_list, 'Tags (separated by commas)' %><br/> 
<%= f.text_field :tag_list %> 

schema.rb

create_table "taggings", id: :serial, force: :cascade do |t| 
    t.integer "tag_id" 
    t.string "taggable_type" 
    t.integer "taggable_id" 
    t.string "tagger_type" 
    t.integer "tagger_id" 
    t.string "context", limit: 128 
    t.datetime "created_at" 
    t.index ["context"], name: "index_taggings_on_context" 
    t.index ["tag_id", "taggable_id", "taggable_type", "context", "tagger_id", "tagger_type"], name: "taggings_idx", unique: true 
    t.index ["tag_id"], name: "index_taggings_on_tag_id" 
    t.index ["taggable_id", "taggable_type", "context"], name: "index_taggings_on_taggable_id_and_taggable_type_and_context" 
    t.index ["taggable_id", "taggable_type", "tagger_id", "context"], name: "taggings_idy" 
    t.index ["taggable_id"], name: "index_taggings_on_taggable_id" 
    t.index ["taggable_type"], name: "index_taggings_on_taggable_type" 
    t.index ["tagger_id", "tagger_type"], name: "index_taggings_on_tagger_id_and_tagger_type" 
    t.index ["tagger_id"], name: "index_taggings_on_tagger_id" 
    end 

    create_table "tags", id: :serial, force: :cascade do |t| 
    t.string "name" 
    t.integer "taggings_count", default: 0 
    t.index ["name"], name: "index_tags_on_name", unique: true 
    end 

Répondre

0

Cela peut être question de la version o f gem essayez ceci ou la version stable

gem 'acts-as-taggable-on', '~> 4.0'