Sha256: 08d138cf79783513318134094a572490f81e9a96a44112426e77276dc6cceb3f

Contents?: true

Size: 1004 Bytes

Versions: 1

Compression:

Stored size: 1004 Bytes

Contents

# scoped_id

Generates scoped unique identifiers.

## Installation

Add `scoped_id` to your Gemfile:

    gem 'scoped_id', '~> 0.0.2'

## Usage

```
class Project < ActiveRecord::Base
  include ScopedId::Concern
  scoped_id :per_owner_id, scope: :owner_id
end

jacks_project = Project.create(owner_id: 1)
jacks_project.per_owner_id # => 1

johns_project = Project.create(owner_id: 2)
johns_project.per_owner_id # => 1
```

The scoped_id is generated in a `before_create` callback unless it has been manually set.

The scoped_id will be marked as readonly and will validate the uniqueness of its value.

### Options

#### Scope (required)

The scope by which to determine the next identifier when creating a new object.

## Contributing

1. Fork it ( http://github.com/mbillard/scoped_id/fork )
2. Create your feature branch (`git checkout -b my-new-feature`)
3. Commit your changes (`git commit -am 'Add some feature'`)
4. Push to the branch (`git push origin my-new-feature`)
5. Create new Pull Request

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
scoped_id-0.0.2 README.md