- 04 6月, 2014 4 次提交
-
-
由 Prathamesh Sonpatki 提交于
-
由 eileencodes 提交于
Reflection has a `belongs_to?` method. Instead of checking for `macro == :belongs_to` throughout the source reuse existing method. I also bumped `foreign_key_present?` method onto on line because the `belongs_to?` makes it shorter than other longer lines in the same class.
-
由 Lauro Caetano 提交于
than existing column. Fixes #15480.
-
由 Sean Griffin 提交于
The contract of `_field_changed?` assumes that the old value is always type cast. That is not the case for the value in `Column#default` as things are today. It appears there are other public methods that assume that `Column#default` is type cast, as well. The reason for this change originally was because the value gets put into `@raw_attributes` in initialize. This reverts to the old behavior on `Column`, and updates `initialize` to make sure that the values are in the right format.
-
- 03 6月, 2014 10 次提交
-
-
由 Yves Senn 提交于
-
由 Sean Griffin 提交于
-
由 Sean Griffin 提交于
-
由 Sean Griffin 提交于
-
由 Yves Senn 提交于
-
由 Sean Griffin 提交于
The types know more about what is going on than the dirty module. Let's ask them!
-
由 Yves Senn 提交于
-
由 eileencodes 提交于
Fix polymorphic to check for `options[:polymorphic]` instead of `options.key? :polymorphic` and then reuse the method `polymorphic?` method instead of constantly checking the same `options[:polymorphic]`.
-
由 Sean Griffin 提交于
This was previously a hook for a special case related to `serialize`, which has since been removed.
-
由 Sean Griffin 提交于
-
- 02 6月, 2014 5 次提交
-
-
由 Yves Senn 提交于
-
由 Yves Senn 提交于
This inlines casting for the most obvious types. The rest will follow eventually. I need to put some tests in place, to make sure that the inlining is not causing regressions. /cc @sgrif
-
由 Sean Griffin 提交于
-
由 Sean Griffin 提交于
Nearly completely implemented in terms of custom properties. `_before_type_cast` now stores the raw serialized string consistently, which removes the need to keep track of "state". The following is now consistently true: - `model.serialized == model.reload.serialized` - A model can be dumped and loaded infinitely without changing - A model can be saved and reloaded infinitely without changing
-
由 Sean Griffin 提交于
During `init_with`, the attributes given to the coder will be placed into `@raw_attributes`. As such, we should read from `@raw_attributes` when encoding, rather than `@attributes`, which has been type cast.
-
- 31 5月, 2014 2 次提交
-
-
由 Sean Griffin 提交于
-
由 Sean Griffin 提交于
`@attributes` was actually used for `_before_type_cast` and friends, while `@attributes_cache` is the type cast version (and caching is the wrong word there, but I'm working on removing the conditionals around that). I opted for `@raw_attributes`, because `_before_type_cast` is also semantically misleading. The values in said hash are in the state given by the form builder or database, so raw seemed to be a good word.
-
- 30 5月, 2014 10 次提交
-
-
由 Sean Griffin 提交于
-
由 Yves Senn 提交于
This removes the case statement in `SchemaDumper` and gives every `Type` the possibility to control the SchemaDumper default value output. /cc @sgrif
-
由 Yves Senn 提交于
This is an intermediate solution. It is related to the refactoring @sgrif is making and will change in the future.
-
由 Yves Senn 提交于
-
由 Yves Senn 提交于
-
由 Yves Senn 提交于
-
由 Sean Griffin 提交于
-
由 Sean Griffin 提交于
-
由 schneems 提交于
-
由 Sean Griffin 提交于
Many of the methods defined in `AttributeMethods::Serialization` can be refactored onto this type as well, but this is a reasonable small step. Removes the `Type` class, and the need for `decorate_columns` to handle serialized types.
-
- 29 5月, 2014 7 次提交
-
-
由 Sean Griffin 提交于
MySQL and PostgreSQL provide a column type override in order to properly type cast computed columns included in a result set. This should never override the known types of full fledged columns. In addition to messing up computed properties, this would have led to inconsistent behavior between a record created with `new`, and a record created with `last` on the mysql adapter in the following cases: - `tinyint(1)` with `emulate_booleans` set to `false` - `text`, `string`, `binary`, and `decimal` columns
-
由 Ethan 提交于
-
由 Sean Griffin 提交于
- Create a consistent API across adapters for building new columns - Use it for custom properties so we don't get `UndefinedMethodError`s in stuff I'm implementing elsewhere.
-
由 Arthur Neves 提交于
-
由 Sean Griffin 提交于
Working towards re-implementing serialized attributes to use the properties API exposed the need for this, as serializing a column shouldn't change the order of the columns.
-
由 Sean Griffin 提交于
-
由 Zachary Scott 提交于
-
- 28 5月, 2014 2 次提交
-
-
由 Sean Griffin 提交于
It appears this property was added, but never actually used. It would be broken if it were, as it only type casts one way.
-
由 Gaurav Sharma 提交于
-