validatable_associations 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
data/README.rdoc CHANGED
@@ -1,12 +1,22 @@
1
1
  = ValidatableAssociations
2
2
 
3
- ValidatableAssociations is an add-on to Jay Fields
3
+ ValidatableAssociations is a Rails plugin and add-on to Jay Fields
4
4
  {Validatable}[http://validatable.rubyforge.org] library. This add-on lets you
5
- specify associations to other validatable classes and allows you to set up a
5
+ specify associations to other validatable Classes and allows you to set up a
6
6
  decent validatable structure.
7
7
 
8
8
  == Install
9
9
 
10
+ Install the gem (recommended):
11
+
12
+ $ gem install validatable_associations
13
+
14
+ Please notice that the validatable_associations gem is in the
15
+ {gemcutter}[http://gemcutter.org] repository. Please follow the instructions
16
+ provided on their website to set up your rubygems installation.
17
+
18
+ Or install as a Rails plugin:
19
+
10
20
  $ script/plugin install git://github.com/rubiii/validatable_associations.git
11
21
 
12
22
  == Associations
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.0
1
+ 0.1.1
@@ -1,13 +1,13 @@
1
1
  # == ValidatableAssociations
2
- #
3
- # ValidatableAssociations is an add-on to the Validatable gem by Jay Fields.
4
- # It adds the most common association methods provided by Rails to your
5
- # validatable Class and allows to set up a decent validatable structure.
2
+ #
3
+ # ValidatableAssociations is a Rails plugin and add-on to Jay Fields Validatable
4
+ # library. This add-on lets you specify associations to other validatable Classes
5
+ # and allows you to set up a decent validatable structure.
6
6
  module ValidatableAssociations
7
7
 
8
8
  # ValidatableAssociations::ClassMethods
9
9
  #
10
- # Includes class methods for setting up the associations.
10
+ # Includes Class methods for setting up the associations.
11
11
  module ClassMethods
12
12
 
13
13
  # Reader/writer method for has_one associations. Sets 1-n +associations+
@@ -16,7 +16,7 @@ module ValidatableAssociations
16
16
  def has_one(*associations)
17
17
  @has_one = [] unless @has_one
18
18
  return @has_one if associations.empty?
19
- @has_one = associations.map { |association| association.to_s }
19
+ @has_one += associations.map { |association| association.to_s }
20
20
  end
21
21
 
22
22
  end
@@ -36,7 +36,7 @@ module ValidatableAssociations
36
36
  # a reader/writer method of an association and handles the read/write process.
37
37
  # Delegates to super otherwise.
38
38
  def method_missing(method, *args)
39
- association_name = to_association_name(method)
39
+ association_name = association_name_from(method)
40
40
  super unless self.class.has_one.include? association_name
41
41
 
42
42
  association_to_set = find_or_create_association(association_name, args[0])
@@ -77,10 +77,10 @@ private
77
77
  # initialized already or in case of given +arguments+.
78
78
  def find_or_create_association(association_name, arguments = nil)
79
79
  if arguments
80
- to_constant(association_name).new arguments
80
+ constant_from(association_name).new arguments
81
81
  else
82
82
  association = self.instance_variable_get("@#{association_name}")
83
- association = to_constant(association_name).new unless association
83
+ association = constant_from(association_name).new unless association
84
84
  association
85
85
  end
86
86
  end
@@ -100,7 +100,7 @@ private
100
100
 
101
101
  # Expects the name of a reader/writer +method+ and turns it into a valid
102
102
  # name for an association.
103
- def to_association_name(method)
103
+ def association_name_from(method)
104
104
  association_name = method.to_s
105
105
  association_name.slice!(-1) if association_name[-1, 1] == "="
106
106
  association_name
@@ -109,7 +109,7 @@ private
109
109
  # Converts a given +symbol+ from snake_case into an existing Constant.
110
110
  # Note that the constanize method might raise a NameError in case the given
111
111
  # symbol could not be mapped to a Constant.
112
- def to_constant(symbol)
112
+ def constant_from(symbol)
113
113
  symbol.to_s.camelize.constantize
114
114
  end
115
115
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: validatable_associations
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel Harrington