Giter VIP home page Giter VIP logo

alias_association's Introduction

AliasAssociation
================

A simple Rails plugin that adds alias_association to ActiveRecord classes.
Aliases all methods added by a reflection (e.g. has_many). The common use case
for such aliasing is during refactoring (keeping backward compatibility).


Install
=======

as a (plain-old) rails plugin :

    ruby script/plugin install git://github.com/kares/alias_association.git


Example
=======

    class Tree

      # f*ck we can't use the "Apple" name
      # SJ sad to sue to sh*t out of us !
      has_many :apples

      alias_association :oranges, :apples

    end

    # as all reflection methods are aliased, we might :
    tree.orange_ids = ...
    tree.oranges.add( ... )


Please note in case of reflections where the correspondent foreign key is an
attribute of the aliased class (e.g. belongs_to), the FK attribute is *not*
aliased (just to keep the magick on a sensual level) ! One might always alias
such FK attributes explicitly using an additional alias_attribute call.

Copyright (c) 2010 Karol Bucek, released under the MIT license

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.