Massively simplify API binding logic
Changes the API internals to use normal Laravel binding which automatically supports nested-models and can determine their relationships. This removes a lot of confusingly complex internal logic and replaces it with standard Laravel code. This also removes a deprecated "getModel" method and fully replaces it with a "parameter" method that does stricter type-checking.
This commit is contained in:
parent
f1235c7f88
commit
e313dff674
53 changed files with 290 additions and 604 deletions
|
@ -68,6 +68,20 @@ abstract class Model extends IlluminateModel
|
|||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the model key to use for route model binding. By default we'll
|
||||
* assume every model uses a UUID field for this. If the model does not have
|
||||
* a UUID and is using a different key it should be specified on the model
|
||||
* itself.
|
||||
*
|
||||
* You may also optionally override this on a per-route basis by declaring
|
||||
* the key name in the URL definition, like "{user:id}".
|
||||
*/
|
||||
public function getRouteKeyName(): string
|
||||
{
|
||||
return 'uuid';
|
||||
}
|
||||
|
||||
/**
|
||||
* Set the model to skip validation when saving.
|
||||
*
|
||||
|
|
Reference in a new issue