RubyGems Navigation menu

e9_tags 0.0.10

E9Tags

An extension to ActsAsTaggableOn which “improves” on custom tagging, or at least makes it more dynamic. Additionally it provides some autocomplete rack apps and the corresponding javascript.

Installation

  1. E9Tags requires jquery and jquery-ui for the autocompletion and tag-adding form, be sure they’re loaded in your pages where the tags form will be rendered.

  2. E9Tags extends ActsAsTaggableOn and requires it. Run it’s generator if you have not.

  3. Run the E9Tags install script to copy over the required JS

    rails g e9_tags:install
    
  4. Then make sure it is loaded, how you do that doesn’t matter, e.g.

    <%= javascript_include_tag 'e9_tags' %>
    
  5. Create an initializer for that sets up the taggable models and their controllers. This gives the models the tag associations and methods and prepares their controller to handle the otherwise unexpected tag params.

    require 'e9_tags'
    require 'contacts_controller'
    require 'contact'
    
    E9Tags.controllers << ContactsController
    E9Tags.models << Contact
    

    OR

    You can just include the modules in your classes yourself. The first way really exists for the case where the classes you wish to extend are part of another plugin/gem.

    # in contact.rb
    include E9Tags:Model
    
    # in contacts_controller.rb
    include E9Tags::Controller
    
  6. Render the tags form partial in whatever model forms require it.

    = render 'e9_tags/form', :f => f
    

    If you pass a context, it will be locked and no longer possible to change/add the contexts on the form (and as a side effect, the tags autocompletion will be restricted to that context).

    = render 'e9_tags/form', :f => f, :context => :users
    

    Finally if you pass a 2nd arg to :context you can set a tag context to be “private” (default is false). In this case the tag context will be locked as private (typically suffixed with *), meaning that the tags will not be publicly searchable/visible. This is useful for organizational tags tags, say if you wanted to arbitrarily group records, or create a custom search based on a tag context.

    = render 'e9_tags/form', :f => f, :context => [:users, true]
    

    NOTE: The form and javascript are intended to work out of the box, but the certainly aren’t going to look pretty. If you do intend to use the forms, you’ll no doubt need to style them.

Gemfile:
= Copy to clipboard Copied!

install:
=

Versions:

  1. 0.0.14 - October 07, 2011 (14 KB)
  2. 0.0.13 - July 20, 2011 (14 KB)
  3. 0.0.12 - May 26, 2011 (14 KB)
  4. 0.0.11 - May 02, 2011 (14 KB)
  5. 0.0.10 - May 02, 2011 (14 KB)
Show all versions (14 total)

Runtime Dependencies (2):

rails ~> 3.0.0

Owners:

Authors:

  • Travis Cox

SHA 256 checksum:

9b2eea4489ff4f641b3338cc7b4a320def2035dfec39b220ea6072a7457971a0

Total downloads 28,070

For this version 3,832

Licenses:

N/A

Required Ruby Version: None

Links: