added Model.primary(name) to set the key #50
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I've been wanting to have a nicer way to set the
primary
key for a model. Instead of having to break the nice chainable API to do:Instead, we can add a chainable method to set the
primaryKey
. Note that I removed themodel[attr].primaryKey = true
piece of code because it seemed unnecessary and wasn't being used anywhere, so I figured it was a bit of feature creep for now.Now setting a
primaryKey
would look like:But then I realized that there might even be a better way using the extra
options
we can tie to a specific property, which would look like this:That last option seems the cleanest to me, and it builds on the existing API. (Note: that's not what's in the PR, so let me know if you like that one better and I'll submit another with it.)