fix: correctly delete child objects - use the original value from save_mode
This commit is contained in:
parent
bc92654be9
commit
38e790c2ac
|
@ -858,6 +858,7 @@ bool Model::save(ModelData * model_data, bool save_whole_tree)
|
|||
void Model::save_tree(bool save_whole_tree)
|
||||
{
|
||||
model_env->has_primary_key_set = has_primary_key_set;
|
||||
SaveMode origin_save_mode = save_mode;
|
||||
|
||||
if( model_env->status && save_whole_tree )
|
||||
{
|
||||
|
@ -897,7 +898,7 @@ void Model::save_tree(bool save_whole_tree)
|
|||
|
||||
if( model_env->status && save_whole_tree )
|
||||
{
|
||||
if( save_mode == DO_DELETE_ON_SAVE )
|
||||
if( origin_save_mode == DO_DELETE_ON_SAVE )
|
||||
model_env->model_work_mode = MORM_MODEL_WORK_MODE_ITERATE_THROUGH_CHILDS_WITH_FOREIGN_KEY;
|
||||
else
|
||||
model_env->model_work_mode = MORM_MODEL_WORK_MODE_ITERATE_THROUGH_CHILDS_WITHOUT_FOREIGN_KEY;
|
||||
|
|
Loading…
Reference in New Issue