Closed CauanCabral closed 4 years ago
As Index can have Mapping definition, including text, boolean, numeric, timestamp, how can I teach Index / Document to convert these types to PHP equivalents?
The ORM does this by introspecting the SQL schema and then using the Type classes to cast results as they are read from the statement objects. An analogous system for elasticsearch could be added to ResultSet::current()
to cast data based on the document schema.
Great.
I'm trying figure how exactly that works:
ORM\ResultSet::current()
only returns value from _current propertyORM\ResultSet::_calculateColumnMap($query)
seems the start pointDatabase\Query::addDefaultTypes
is called from __construct and, I think, is where I need to workDid I miss something?
I was referring to the ResultSet
in this plugin. The methods you outlined are part of how the types are collected in the ORM. The casting happens inside of FieldTypeConverter
which is used as a statement decorator by Cake\Database\Query::_decorateStatement()
@markstory I did a prototype based on 2.x branch (my env have Cake 3.x + elasticsearch 6.x).
Tried to be simple as possible, so, I included a Dummy
driver who do nothing, justo to pass as a Type::toPHP
parameter. For my current env/data, worked fine.
Thinking how to tests that before opening a PR.
Any chance to apply this on both Cake\ElasticSearch
active branch (3.x and 2.x)?
This issue is stale because it has been open for 120 days with no activity. Remove the stale
label or comment or this will be closed in 15 days
I hadn't time to finish the PR yet, but I will.
When searching on tables, we have automatically conversions from database types to PHP equivalents, but on indexes, they seen always text type.
As Index can have Mapping definition, including text, boolean, numeric, timestamp, how can I teach Index / Document to convert these types to PHP equivalents?