Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Row normalization #138

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open

Row normalization #138

wants to merge 2 commits into from

Conversation

Unlink
Copy link
Contributor

@Unlink Unlink commented Jun 2, 2016

Closes #36 and #100

for ($i=0; $i<$statement->columnCount(); $i++) {
$meta = $statement->getColumnMeta($i);
$tableName = isset($meta['table']) ? $meta['table'] : '';
if (isset($cols[$meta['name']])) {
Copy link
Member

@dg dg Jun 2, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

IMHO $cols[$meta['name']][] = $tableName; is always good, without if

@dg
Copy link
Member

dg commented Jun 2, 2016

For what cases it is necessary to have its own normalizer? And normalizer and own row factory?

@Unlink
Copy link
Contributor Author

Unlink commented Jun 10, 2016

Sry for late response. So, at first this PR allow create your own row normalizer for whole session because you should specify it in config. Sometimes i need work with geomatics data types eg. point and it will be nice if i could wrap it in my own class globaly. According to #36 i added possibility to specify row normalizer for specific ResultSet, so you can for example turn off normalization if you need.

RowFactory is used internally in Selection. It's because i want to use whole ResultSet with duplicate columns check feature... so i don't create at first Row instances and then ActiveRow from them but i used row factory so ResultSet::fetch return correct instances. I was also thinking about change ActiveRow to use Row instead of plain array, but i don't know.

@dg dg force-pushed the master branch 2 times, most recently from 5c87d56 to d9fd67a Compare Jun 27, 2016
@dg
Copy link
Member

dg commented Jun 28, 2016

@Unlink Thanks for all the PR. I'm sorry that I did not have time for Nette Database. I merged commit with improved error message on duplications. Now I'd like to release NDB 2.4, because it is the last unreleased package, and than I'll merge others PR like #102/#105, row normalizer, and we can discuss about refactoring Structure. Next NDB 2.5 can be released in few months. Ok?

@Unlink
Copy link
Contributor Author

Unlink commented Jun 29, 2016

ok, thanks :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants