Comments (2)
This is why I made method chaining completely different from find() with array config. I hate first/last, if it was completely up to me it would be just 'one' or 'all'. Using either first or last changes the order_by condition, which can be usefull for simple queries, but is impossible for more advanced queries (with multiple order_by conditions). Using first/last is just when you're doing a Q&D query, not when you're doing serious stuff, if you're doing something more advanced you should do the ordering yourself and not have some automagic change it for you. This is why I don't think this is a good idea, and if I didn't think any of the other main devs would scream at me for it I'd remove first/last from the find() array usage as well and replace it with 'one' (reverse the order yourself if you want the last).
from orm.
Ok, I understand, and must say neither like the 'first' and 'last' options.
Finding and ID means you know there's only one, while 'first' and 'last' implies there's a bunch of results and you are filtering it. Then the idea of filter leads to use statements like 'where'.
I agree with you, but think this wasn't the last time someone will get confused about this behavior.
In other subject, I liked the way you resolved the model relations queries and method chaining using Model::query()
Perhaps limiting the use of ::find to results and ::query for method chaining will ensure not having confusions.
I don't want to bother you, know you have a lot of work to do (and I really appreciate your effort and your great work).
So, if you think I'm pushing too much, let me know. My intention is only to be helpful.
from orm.
Related Issues (20)
- Update at branch 1.8/master should be released HOT 4
- Model_Temporal: Multiple functions don't work when primary key is changed from 'id' HOT 1
- Error since last commit HOT 3
- Enhancement: table views in related models
- Orm remembers which fields were selected previously when it shouldn't HOT 9
- php 7.4 bag HOT 11
- [Bug report]I will report this bug in fuelPHP forum HOT 3
- help pls count relation HOT 1
- 1.9/dev - Relation condition use query's where instead of relation's on clause HOT 12
- relations multiple empty bug HOT 18
- Many to Many Relationships HOT 2
- creating new relation models, which should be same, with ->from_cache(false) HOT 3
- The solution for Issue #432 seems to be wrong. HOT 1
- Run Typing on default value if value is null HOT 1
- [ORM bug dev-1.9]Orm fetches wrong data when I use multiple related. HOT 7
- Cannot delete relations HOT 2
- Related conditions are applied to incorrect place in the query HOT 3
- Second-degree relations not being eager-loaded HOT 6
- Eager-loaded relations are not cached when null
- Making classes overloadable
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from orm.