small changes in log_manager.cpp and add is_database_primitive type traits and test
This commit is contained in:
@@ -161,13 +161,13 @@ template <class CollectionType>
|
||||
void query_result_impl::on_has_many(const char *id, CollectionType &cont, const char *join_column, const utils::foreign_attributes &attr, std::enable_if_t<!object::is_object_ptr<typename CollectionType::value_type>::value> *) {
|
||||
using value_type = typename CollectionType::value_type;
|
||||
auto object_resolver = resolver_->object_resolver<value_type>();
|
||||
auto resolver = resolver_->collection_resolver<typename CollectionType::value_type>(result_type_, join_column);
|
||||
auto resolver = resolver_->collection_resolver<value_type>(result_type_, join_column);
|
||||
|
||||
if (attr.fetch() == utils::fetch_type::Lazy) {
|
||||
cont.reset(std::make_shared<object::collection_proxy<typename CollectionType::value_type>>(resolver, current_pk_));
|
||||
cont.reset(std::make_shared<object::collection_proxy<value_type>>(resolver, current_pk_));
|
||||
} else {
|
||||
if (initialized_collections_.insert({result_type_, typeid(typename CollectionType::value_type), std::string{join_column}}).second) {
|
||||
cont.reset(std::make_shared<object::collection_proxy<typename CollectionType::value_type>>(resolver, std::vector<typename CollectionType::value_type>()));
|
||||
if (initialized_collections_.insert({result_type_, typeid(value_type), std::string{join_column}}).second) {
|
||||
cont.reset(std::make_shared<object::collection_proxy<value_type>>(resolver, std::vector<value_type>()));
|
||||
}
|
||||
|
||||
// read a single value
|
||||
|
||||
Reference in New Issue
Block a user