Browse Source

relational fields in the delete_related method

Roland Haroutiounian 9 years ago
parent
commit
4a4204de17
1 changed files with 16 additions and 5 deletions
  1. 16
    5
      leobject/datasources/ledatasourcesql.py

+ 16
- 5
leobject/datasources/ledatasourcesql.py View File

@@ -233,17 +233,28 @@ class LeDataSourceSQL(DummyDatasource):
233 233
     ## @brief Deletes the relation between 2 LeType
234 234
     # @param lesup LeType
235 235
     # @param lesub LeType
236
+    # @param fields dict
236 237
     # @return True if success else False
237 238
     # @todo Add fields parameter to identify relation
238 239
     # @todo Delete relationnal fields if some exists
239
-    def del_related(self, lesup, lesub):
240
+    def del_related(self, lesup, lesub, fields=None):
240 241
         with self.connection as cur:
242
+            del_params = {
243
+                'id_sup': lesup.lodel_id,
244
+                'id_sub': lesub.lodel_id
245
+            }
246
+            delete_params = {}
247
+
248
+            if fields is not None:
249
+                delete_params = del_params.copy()
250
+                delete_params.update(fields)
251
+            else:
252
+                delete_params = del_params
253
+
254
+
241 255
             sql = delete(
242 256
                 self.datasource_utils.relations_table_name,
243
-                {
244
-                    'id_sup': lesup.lodel_id,
245
-                    'id_sub': lesub.lodel_id
246
-                }
257
+                delete_params
247 258
             )
248 259
 
249 260
             if cur.execute(sql) != 1:

Loading…
Cancel
Save