Closed 1stevengrant closed 6 years ago
This is actually possible in Craft 3, thanks to all of the element query improvements. You can customize which columns get selected, and opt to have the data returned as arrays rather than models.
{% set entries = craft.entries.section('tasks').asArray().all() %}
Nice!
@brandonkelly is this available in Craft 3 now or coming further down the line?
It's available now
As much as I like the concept of a headless CMS, I feel like it's often throwing the baby out with the bath water, giving up things that CMS gives you for free like routing, nav management etc.
In my quest to find a happy medium, I think something like Vue and Craft could work together in a hybrid approach.
I've done this quite a bit within Laravel apps where I can do something like
$tasks = Task::where(['user_id' => Auth::user()->id])->get();
in my controller, expose that to my view and then output using{{$tasks}}
in my Blade template and then passing that var for use in a Vue component.The simple
{{$tasks}}
gives meI think, I could do something like https://craftcms.stackexchange.com/questions/20/how-can-i-retrieve-channel-data-in-json-format but would be nicer to do something like this on the Twig side
and then have {{ entries }} just output as an array.
Is that a clear enough example?
Thanks.