From 29d1e2f0ce42f9ae8c57ba04fa293eebd1aef815 Mon Sep 17 00:00:00 2001 From: arkohut <39525455+arkohut@users.noreply.github.com> Date: Mon, 21 Oct 2024 14:48:59 +0800 Subject: [PATCH] feat(plugin): add default plugin only if binding not exist --- memos/models.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/memos/models.py b/memos/models.py index df4ce79..30f5f3e 100644 --- a/memos/models.py +++ b/memos/models.py @@ -325,10 +325,16 @@ def init_default_libraries(session, default_plugins): for plugin in default_plugins: bind_response = session.query(PluginModel).filter_by(name=plugin.name).first() if bind_response: - library_plugin = LibraryPluginModel( + # Check if the LibraryPluginModel already exists + existing_library_plugin = session.query(LibraryPluginModel).filter_by( library_id=1, plugin_id=bind_response.id - ) # Assuming library_id=1 for default libraries - session.add(library_plugin) + ).first() + + if not existing_library_plugin: + library_plugin = LibraryPluginModel( + library_id=1, plugin_id=bind_response.id + ) # Assuming library_id=1 for default libraries + session.add(library_plugin) session.commit()