Initial commit
This commit is contained in:
commit
d7c07e03ff
17
.gitignore
vendored
Normal file
17
.gitignore
vendored
Normal file
@ -0,0 +1,17 @@
|
||||
*.gem
|
||||
*.rbc
|
||||
.bundle
|
||||
.config
|
||||
.yardoc
|
||||
Gemfile.lock
|
||||
InstalledFiles
|
||||
_yardoc
|
||||
coverage
|
||||
doc/
|
||||
lib/bundler/man
|
||||
pkg
|
||||
rdoc
|
||||
spec/reports
|
||||
test/tmp
|
||||
test/version_tmp
|
||||
tmp
|
4
Gemfile
Normal file
4
Gemfile
Normal file
@ -0,0 +1,4 @@
|
||||
source 'https://rubygems.org'
|
||||
|
||||
# Specify your gem's dependencies in mongoid-enum.gemspec
|
||||
gemspec
|
22
LICENSE.txt
Normal file
22
LICENSE.txt
Normal file
@ -0,0 +1,22 @@
|
||||
Copyright (c) 2013 Nicholas Bruning
|
||||
|
||||
MIT License
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of this software and associated documentation files (the
|
||||
"Software"), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish,
|
||||
distribute, sublicense, and/or sell copies of the Software, and to
|
||||
permit persons to whom the Software is furnished to do so, subject to
|
||||
the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be
|
||||
included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
29
README.md
Normal file
29
README.md
Normal file
@ -0,0 +1,29 @@
|
||||
# Mongoid::Enum
|
||||
|
||||
Heavily inspired by DHH's ActiveRecord::Enum, this little library is
|
||||
really just a good tablespoon of syntactik sugar.
|
||||
|
||||
|
||||
# Usage
|
||||
|
||||
class Payment
|
||||
|
||||
enum :status, [:pending, :approved, :declined],
|
||||
|
||||
end
|
||||
|
||||
* Stores as `_status`, accessible from `status` and `status=`.
|
||||
* Automatically validates against `:options`
|
||||
* Stored as a string, but always expressed as a symbol. Access is
|
||||
indifferent (or masks said behaviour
|
||||
|
||||
# Options
|
||||
|
||||
:multiple
|
||||
|
||||
Changes storage to `_status_array`, and allows for the storage of
|
||||
multiple options.
|
||||
|
||||
Should also include some finders!
|
||||
|
||||
Payment.declined, etc..
|
7
lib/mongoid/enum.rb
Normal file
7
lib/mongoid/enum.rb
Normal file
@ -0,0 +1,7 @@
|
||||
require "mongoid/enum/version"
|
||||
|
||||
module Mongoid
|
||||
module Enum
|
||||
# Your code goes here...
|
||||
end
|
||||
end
|
5
lib/mongoid/enum/version.rb
Normal file
5
lib/mongoid/enum/version.rb
Normal file
@ -0,0 +1,5 @@
|
||||
module Mongoid
|
||||
module Enum
|
||||
VERSION = "0.0.1"
|
||||
end
|
||||
end
|
23
mongoid-enum.gemspec
Normal file
23
mongoid-enum.gemspec
Normal file
@ -0,0 +1,23 @@
|
||||
# coding: utf-8
|
||||
lib = File.expand_path('../lib', __FILE__)
|
||||
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
||||
require 'mongoid/enum/version'
|
||||
|
||||
Gem::Specification.new do |spec|
|
||||
spec.name = "mongoid-enum"
|
||||
spec.version = Mongoid::Enum::VERSION
|
||||
spec.authors = ["Nicholas Bruning"]
|
||||
spec.email = ["nicholas@bruning.com.au"]
|
||||
spec.description = %q{TODO: Write a gem description}
|
||||
spec.summary = %q{TODO: Write a gem summary}
|
||||
spec.homepage = ""
|
||||
spec.license = "MIT"
|
||||
|
||||
spec.files = `git ls-files`.split($/)
|
||||
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
||||
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
||||
spec.require_paths = ["lib"]
|
||||
|
||||
spec.add_development_dependency "bundler", "~> 1.3"
|
||||
spec.add_development_dependency "rake"
|
||||
end
|
Loading…
x
Reference in New Issue
Block a user