Skip to content

Commit ebd97b3

Browse files
etjgiohappy
authored andcommitted
[Fixes #13067] Thesaurus: improve management commands
1 parent b5a6680 commit ebd97b3

File tree

9 files changed

+487
-366
lines changed

9 files changed

+487
-366
lines changed

geonode/base/admin.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,14 +25,14 @@
2525
from dal import autocomplete
2626
from taggit.forms import TagField
2727
from django.core.management import call_command
28-
from slugify import slugify
2928
from django.contrib import messages
3029

3130
from treebeard.admin import TreeAdmin
3231
from treebeard.forms import movenodeform_factory
3332

3433
from modeltranslation.admin import TabbedTranslationAdmin
3534

35+
from geonode.base.management.commands.thesaurus_subcommands.load import ACTION_UPDATE
3636
from geonode.base.models import (
3737
TopicCategory,
3838
SpatialRepresentationType,
@@ -224,8 +224,7 @@ def import_rdf(self, request):
224224
if request.method == "POST":
225225
try:
226226
rdf_file = request.FILES["rdf_file"]
227-
name = slugify(rdf_file.name).removesuffix("-rdf")
228-
call_command("load_thesaurus", file=rdf_file, name=name)
227+
call_command("thesaurus", "load", action=ACTION_UPDATE, file=rdf_file)
229228
self.message_user(request, "Your RDF file has been imported", messages.SUCCESS)
230229
return redirect("..")
231230
except Exception as e:
Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,14 @@
11
import logging
2+
from logging import getLevelName
3+
24
from django.conf import settings
35

46
DEFAULT_COMMAND_LOGGER_NAME = "geonode.commands"
57

68

7-
def setup_logger(logger_name=DEFAULT_COMMAND_LOGGER_NAME, formatter_name="command", handler_name="command"):
9+
def setup_logger(logger_name=DEFAULT_COMMAND_LOGGER_NAME, formatter_name="command", handler_name="command", level=logging.INFO):
10+
logger = logging.getLogger(logger_name)
11+
812
if logger_name not in settings.LOGGING["loggers"]:
913
format = "%(levelname)-7s %(asctime)s %(message)s"
1014

@@ -18,17 +22,16 @@ def setup_logger(logger_name=DEFAULT_COMMAND_LOGGER_NAME, formatter_name="comman
1822
}
1923
settings.LOGGING["loggers"][logger_name] = {
2024
"handlers": [handler_name],
21-
"level": "INFO",
25+
"level": getLevelName(level),
2226
"propagate": False
2327
}
2428

2529
handler = logging.StreamHandler()
2630
handler.setFormatter(logging.Formatter(fmt=format))
27-
handler.setLevel(logging.DEBUG)
31+
handler.setLevel(level)
2832

29-
logger = logging.getLogger(logger_name)
3033
logger.addHandler(handler)
31-
logger.setLevel(logging.INFO)
34+
logger.setLevel(level)
3235
logger.propagate = False
3336

34-
return logger
37+
return logger

geonode/base/management/commands/dump_thesaurus.py

Lines changed: 0 additions & 125 deletions
This file was deleted.

0 commit comments

Comments
 (0)