wcs: add db cache refresh to formdef/category cells (#28043)
This commit is contained in:
parent
64ea265733
commit
4ea3c2c920
|
@ -34,4 +34,14 @@ class AppConfig(django.apps.AppConfig):
|
|||
from . import urls
|
||||
return urls.urlpatterns
|
||||
|
||||
def hourly(self):
|
||||
self.update_db_cache()
|
||||
|
||||
def update_db_cache(self):
|
||||
from combo.data.models import CellBase
|
||||
from .models import WcsFormCell, WcsCategoryCell, WcsFormsOfCategoryCell
|
||||
for cell in CellBase.get_cells(
|
||||
cell_filter=lambda x: x in (WcsFormCell, WcsCategoryCell, WcsFormsOfCategoryCell)):
|
||||
cell.save()
|
||||
|
||||
default_app_config = 'combo.apps.wcs.AppConfig'
|
||||
|
|
|
@ -11,6 +11,7 @@ import tempfile
|
|||
import time
|
||||
import os
|
||||
|
||||
from django.apps import apps
|
||||
from django.conf import settings
|
||||
from django.core.cache import cache
|
||||
from django.test import override_settings
|
||||
|
@ -267,6 +268,13 @@ def test_form_cell_save_cache():
|
|||
'url': 'http://127.0.0.1:8999/form-title/',
|
||||
'text': ''}]
|
||||
|
||||
# artificially change title
|
||||
WcsFormCell.objects.filter(id=cell.id).update(cached_title='XXX')
|
||||
assert WcsFormCell.objects.get(id=cell.id).cached_title == 'XXX'
|
||||
# run update db cache
|
||||
appconfig = apps.get_app_config('wcs')
|
||||
appconfig.update_db_cache()
|
||||
assert WcsFormCell.objects.get(id=cell.id).cached_title == 'form title'
|
||||
|
||||
@wcsctl_present
|
||||
def test_form_cell_load():
|
||||
|
|
Loading…
Reference in New Issue