- 13 8月, 2015 13 次提交
-
-
由 Aaron Patterson 提交于
Now we don't have to manually remove this from the options hash since the scope stores it outside of "options"
-
由 Aaron Patterson 提交于
Remove the `options` reader from `Resource` because nobody needs to see that hash. Also remove mutations on the options hash in `apply_common_behavior_for` because leaving the side effects in that method makes it difficult to understand what is going on in the caller.
-
由 Aaron Patterson 提交于
these two keys have a different merge strategy, and they also just get removed from the options hash later in the code. If we store them in a separate place, then we don't need to remove them later
-
由 Aaron Patterson 提交于
Eventually we don't want to expose the "options" hash from scope, only read values from it. Lets start by adding a reader method.
-
由 Aaron Patterson 提交于
now we don't need to construct a Mapping object just to get an ArgumentError if there is no `via` parameter provided.
-
由 Aaron Patterson 提交于
-
由 Aaron Patterson 提交于
-
由 Aaron Patterson 提交于
We're going to try pulling this up further, and check `via` validity sooner. This way we don't have to do a bunch of processing on `options` hashes only to find out that the route is incorrect
-
由 Aaron Patterson 提交于
If we do the Regexp verification in a second method, then the `split_constraints` method gets much easier.
-
由 Aaron Patterson 提交于
-
由 Aaron Patterson 提交于
-
由 Aaron Patterson 提交于
I don't want `split_constraints` to mutate any instance variables. That way it's easier to move the method around and understand what it does (it has no side effects)
-
由 Aaron Patterson 提交于
I don't want to rely on mutating ivars. This gives me more freedom when refactoring
-
- 12 8月, 2015 15 次提交
-
-
由 Aaron Patterson 提交于
-
由 Aaron Patterson 提交于
we don't need to do it so many times.
-
由 Aaron Patterson 提交于
-
由 Aaron Patterson 提交于
Now we only need to call `split_constraints` possibly twice!
-
由 Aaron Patterson 提交于
apparently `format` can also come from the scope options, so we need to extract it there too.
-
由 Aaron Patterson 提交于
this way we don't have to insert / delete it from the options hash so many times.
-
由 Aaron Patterson 提交于
eventually we'll remove the need to access `scope` inside the Mapping object.
-
由 Aaron Patterson 提交于
-
由 Aaron Patterson 提交于
`using_match_shorthand?` doesn't need to know that an options hash exists. Also use this opportunity to make the boolean logic a little more sane
-
由 Aaron Patterson 提交于
-
由 Aaron Patterson 提交于
this simplifies the "downstream" logic since we know we'll only be dealing with one particular type
-
由 Aaron Patterson 提交于
-
由 Aaron Patterson 提交于
I think we can find the original place where `action` is added to the options hash now.
-
由 Aaron Patterson 提交于
-
由 Aaron Patterson 提交于
we want to try to pull this logic up to where the user actually passed in "controller" so that it's close to the related call. That way when we're down the stack, we don't need to wonder "why are we doing this?"
-
- 11 8月, 2015 12 次提交
-
-
由 Robin Dupret 提交于
-
由 Rafael Mendonça França 提交于
There are some cases where :path is nil on option and we should respect that.
-
由 Aaron Patterson 提交于
We already know how to handle `path`, so lets just handle it on our own.
-
由 Aaron Patterson 提交于
All callers of `action_path` interpolate the return value in to a string, so there is no need for the method to to_s it. to_sym on a symbol will return the same symbol, though I think `action_path` may always be called with a symbol so this might not be necessary.
-
由 Aaron Patterson 提交于
we only need to check for `path` once.
-
由 Aaron Patterson 提交于
Now we can see where `defaults` options originate
-
由 Aaron Patterson 提交于
-
由 Aaron Patterson 提交于
since `controller` and `controller_scope` were the same, just combine them
-
由 Aaron Patterson 提交于
-
由 Aaron Patterson 提交于
This method isn't used internally, isn't tested, isn't documented. We should delete it.
-
由 Aaron Patterson 提交于
add a predicate method so that we can avoid is_a? calls on the resource object.
-
由 Aaron Patterson 提交于
calling `scope` isn't cheap, so try to call cheaper methods that do the same thing for those particular parameters (in this case `path_scope`)
-