FIRM PERSPECTIVE
3.15
Price-quantity relations: the mathematics
Let us now have a brief look at the details of the model. The building blocks for describing firm behaviour and demand have remained unchanged. We still employ the equations and parameter values described previously.
What has changed is that we have now taken this model to the next stage: instead of ‘only’ describing firm behaviour, it is now an equilibrium model that describes firm behaviour, consumer behaviour, and the linkage of these two implied by market clearing. The model not only calculates how much electricity each firm produces and how much electricity consumers demand for given prices and policies but it matches aggregate supply and demand by adjusting the market price for electricity.
How does this work? You have to add a balance between supply and demand, like in the very first model exercise.
First, let’s define the production of each firm, $$i$$, (ie, the $$q_i$$) for a given price and sum them to obtain the aggregate production of all the firms at that price, $$Q^{supply}$$:
$$Q^{supply} = \sum_{\begin{gather}i=firm_{PV},firm_{Wind},firm_{Coal} \ firm_{Gas}, firm_{Nuclear}\end{gather}}q_i$$
Second, demand is still given by
$$d= \overline{Q}-\eta \cdot p$$
Now, you can add a balancing equation that models the fact that an electricity market must clear (electricity demand has to equal supply):
(1) $$d=Q^{supply}$$.
This additional equation determines the electricity price, which, so far, has been an exogenous variable. Now, it becomes endogenous.
Note that equation (1) cannot be easily solved analytically, as the equations for the different firms are too complex. Thus we use a numerical algorithm to solve this equation.
This is the first equilibrium model that we have used in this course. These models are important as they describe how a society consisting of different actors (firms, in our case) work if the connections between actors are taken into account. From now on, we will always use this type of model, as connected actors are what we usually encounter in modelling future energy systems.
- Hide »
- Toggle Theme
-
History
-
Versions
Django 4.2.19 -
Time
CPU: 1371.75ms (1324.58ms) - Settings
- Headers
-
Request
apply_cache -
SQL
0 queries in 0.00ms -
Static files
7 files used -
Templates
step/step-title.html -
Cache
3 calls in 55.53ms -
Cachalot
Last invalidation: 22 minutes -
Signals
110 receivers of 15 signals -
Intercept redirects
-
Profiling
Versions
Package | Name | Version |
---|---|---|
Django | 4.2.19 | |
Python | 3.11.11 | |
allauth | Allauth | 65.4.1.final.0 |
cachalot | Cachalot | 2.6.3 |
crispy_bootstrap5 | Crispy_Bootstrap5 | 2024.10 |
crispy_forms | Crispy_Forms | 2.3 |
debug_toolbar | Debug Toolbar | 4.4.6 |
django_extensions | Django Extensions | 3.2.3 |
django_q | Django Q | 1.7.6 |
imagekit | Imagekit | 5.0.0 |
impersonate | Impersonate | 1.9.4 |
markdownx | Markdownx | 4.0.7 |
mozilla_django_oidc | Mozilla_Django_Oidc | 4.0.1 |
notifications | Notifications | 1.8.3 |
rosetta | Rosetta | 0.10.1 |
rules | Rules | 3.5.0.final.1 |
simple_history | Simple_History | 3.7.0 |
storages | Storages | 1.14.4 |
tos | Terms Of Service | 1.1.0 |
waffle | django-waffle | 4.1.0 |
Time
Resource usage
Resource | Value |
---|---|
User CPU time | 1050.003 msec |
System CPU time | 321.747 msec |
Total CPU time | 1371.750 msec |
Elapsed time | 1324.577 msec |
Context switches | 13892 voluntary, 1560 involuntary |
Browser timing
Timing attribute | Timeline | Milliseconds since navigation start (+length) |
---|
Settings from config.settings.staging
Setting | Value |
---|---|
ABSOLUTE_URL_OVERRIDES | {} |
ACCOUNT_ADAPTER | 'lms_base.adapter.AccountAdapter' |
ADMINS | (('admin', 'notifications-nmc@unibas.ch'),) |
ADMIN_URL | 'admin/' |
ALLOWED_HOSTS | ['*'] |
APPEND_SLASH | True |
AUTHENTICATION_BACKENDS | ('rules.permissions.ObjectPermissionBackend',
'lms_base.authentication.EDUIDAuthenticationBackend',
'django.contrib.auth.backends.ModelBackend') |
AUTH_PASSWORD_VALIDATORS | '********************' |
AUTH_USER_MODEL | 'users.User' |
BASE_DIR | '/app/project/config/../' |
CACHALOT_ENABLED | True |
CACHES | {'default': {'BACKEND': 'django_redis.cache.RedisCache',
'LOCATION': 'redis://tales-redis:6379/1',
'OPTIONS': {'CLIENT_CLASS': 'django_redis.client.DefaultClient',
'IGNORE_EXCEPTIONS': True}}} |
CACHE_MIDDLEWARE_ALIAS | 'default' |
CACHE_MIDDLEWARE_KEY_PREFIX | '********************' |
CACHE_MIDDLEWARE_SECONDS | 600 |
CI_COMMIT_SHORT_SHA | '0809bd77' |
CI_COMMIT_TAG | '' |
CRISPY_ALLOWED_TEMPLATE_PACKS | 'bootstrap5' |
CRISPY_TEMPLATE_PACK | 'bootstrap5' |
CSRF_COOKIE_AGE | 31449600 |
CSRF_COOKIE_DOMAIN | None |
CSRF_COOKIE_HTTPONLY | False |
CSRF_COOKIE_MASKED | False |
CSRF_COOKIE_NAME | 'csrftoken' |
CSRF_COOKIE_PATH | '/' |
CSRF_COOKIE_SAMESITE | None |
CSRF_COOKIE_SECURE | False |
CSRF_FAILURE_VIEW | 'django.views.csrf.csrf_failure' |
CSRF_HEADER_NAME | 'HTTP_X_CSRFTOKEN' |
CSRF_TRUSTED_ORIGINS | [] |
CSRF_USE_SESSIONS | False |
DATABASES | {'default': {'ATOMIC_REQUESTS': False,
'AUTOCOMMIT': True,
'CONN_HEALTH_CHECKS': False,
'CONN_MAX_AGE': 0,
'ENGINE': 'django.db.backends.postgresql',
'HOST': 'tales-postgres',
'NAME': 'tptt',
'OPTIONS': {},
'PASSWORD': '********************',
'PORT': '5432',
'TEST': {'CHARSET': None,
'COLLATION': None,
'MIGRATE': True,
'MIRROR': None,
'NAME': None},
'TIME_ZONE': None,
'USER': 'tales_db_user'}} |
DATABASE_ROUTERS | [] |
DATA_UPLOAD_MAX_MEMORY_SIZE | 2621440 |
DATA_UPLOAD_MAX_NUMBER_FIELDS | 1000 |
DATA_UPLOAD_MAX_NUMBER_FILES | 100 |
DATETIME_FORMAT | 'N j, Y, P' |
DATETIME_INPUT_FORMATS | ['%Y-%m-%d %H:%M:%S',
'%Y-%m-%d %H:%M:%S.%f',
'%Y-%m-%d %H:%M',
'%m/%d/%Y %H:%M:%S',
'%m/%d/%Y %H:%M:%S.%f',
'%m/%d/%Y %H:%M',
'%m/%d/%y %H:%M:%S',
'%m/%d/%y %H:%M:%S.%f',
'%m/%d/%y %H:%M'] |
DATE_FORMAT | 'N j, Y' |
DATE_INPUT_FORMATS | ['%Y-%m-%d',
'%m/%d/%Y',
'%m/%d/%y',
'%b %d %Y',
'%b %d, %Y',
'%d %b %Y',
'%d %b, %Y',
'%B %d %Y',
'%B %d, %Y',
'%d %B %Y',
'%d %B, %Y'] |
DEBUG | True |
DEBUG_PROPAGATE_EXCEPTIONS | False |
DEBUG_TOOLBAR_CONFIG | {'SHOW_TOOLBAR_CALLBACK': <function show_toolbar at 0x706cb92a96c0>} |
DEBUG_TOOLBAR_PANELS | ['debug_toolbar.panels.history.HistoryPanel',
'debug_toolbar.panels.versions.VersionsPanel',
'debug_toolbar.panels.timer.TimerPanel',
'debug_toolbar.panels.settings.SettingsPanel',
'debug_toolbar.panels.headers.HeadersPanel',
'debug_toolbar.panels.request.RequestPanel',
'debug_toolbar.panels.sql.SQLPanel',
'debug_toolbar.panels.staticfiles.StaticFilesPanel',
'debug_toolbar.panels.templates.TemplatesPanel',
'debug_toolbar.panels.cache.CachePanel',
'cachalot.panels.CachalotPanel',
'debug_toolbar.panels.signals.SignalsPanel',
'debug_toolbar.panels.logging.LoggingPanel',
'debug_toolbar.panels.redirects.RedirectsPanel',
'debug_toolbar.panels.profiling.ProfilingPanel'] |
DECIMAL_SEPARATOR | '.' |
DEFAULT_AUTO_FIELD | 'django.db.models.AutoField' |
DEFAULT_CHARSET | 'utf-8' |
DEFAULT_EXCEPTION_REPORTER | 'django.views.debug.ExceptionReporter' |
DEFAULT_EXCEPTION_REPORTER_FILTER | 'django.views.debug.SafeExceptionReporterFilter' |
DEFAULT_FILE_STORAGE | 'django.core.files.storage.FileSystemStorage' |
DEFAULT_FROM_EMAIL | 'contact-nmc@unibas.ch' |
DEFAULT_INDEX_TABLESPACE | '' |
DEFAULT_TABLESPACE | '' |
DEPLOY_ENV | 'staging' |
DISALLOWED_USER_AGENTS | [] |
DJANGO_APPS | ('django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'django.forms',
'django.contrib.sites',
'django.contrib.flatpages',
'modeltranslation',
'django.contrib.admin',
'django.contrib.redirects',
'django.contrib.sitemaps',
'django.contrib.humanize') |
DJANGO_NOTIFICATIONS_CONFIG | {'USE_JSONFIELD': True} |
EMAIL_BACKEND | 'django.core.mail.backends.smtp.EmailBackend' |
EMAIL_HOST | 'smtp.unibas.ch' |
EMAIL_HOST_PASSWORD | '********************' |
EMAIL_HOST_USER | '' |
EMAIL_PORT | 25 |
EMAIL_SSL_CERTFILE | None |
EMAIL_SSL_KEYFILE | '********************' |
EMAIL_SUBJECT_PREFIX | '[Django] ' |
EMAIL_TIMEOUT | None |
EMAIL_USE_LOCALTIME | False |
EMAIL_USE_SSL | False |
EMAIL_USE_TLS | False |
FILE_UPLOAD_DIRECTORY_PERMISSIONS | None |
FILE_UPLOAD_HANDLERS | ['django.core.files.uploadhandler.MemoryFileUploadHandler',
'django.core.files.uploadhandler.TemporaryFileUploadHandler'] |
FILE_UPLOAD_MAX_MEMORY_SIZE | 2621440 |
FILE_UPLOAD_PERMISSIONS | 420 |
FILE_UPLOAD_TEMP_DIR | None |
FIRST_DAY_OF_WEEK | 0 |
FIXTURE_DIRS | [] |
FORCE_SCRIPT_NAME | None |
FORMAT_MODULE_PATH | None |
FORM_RENDERER | 'django.forms.renderers.TemplatesSetting' |
IGNORABLE_404_URLS | [] |
IMAGEKIT_CACHEFILE_DIR | 'CACHE/images' |
IMAGEKIT_CACHEFILE_NAMER | 'imagekit.cachefiles.namers.hash' |
IMAGEKIT_CACHE_BACKEND | 'default' |
IMAGEKIT_CACHE_PREFIX | 'imagekit:' |
IMAGEKIT_CACHE_TIMEOUT | 300 |
IMAGEKIT_DEFAULT_CACHEFILE_BACKEND | 'imagekit.cachefiles.backends.Simple' |
IMAGEKIT_DEFAULT_CACHEFILE_STRATEGY | 'imagekit.cachefiles.strategies.JustInTime' |
IMAGEKIT_DEFAULT_FILE_STORAGE | 'default' |
IMAGEKIT_SPEC_CACHEFILE_NAMER | 'imagekit.cachefiles.namers.source_name_as_path' |
IMAGEKIT_USE_MEMCACHED_SAFE_CACHE_KEY | '********************' |
INSTALLED_APPS | ('django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'django.forms',
'django.contrib.sites',
'django.contrib.flatpages',
'modeltranslation',
'django.contrib.admin',
'django.contrib.redirects',
'django.contrib.sitemaps',
'django.contrib.humanize',
'simple_history',
'crispy_forms',
'crispy_bootstrap5',
'allauth',
'allauth.account',
'allauth.socialaccount',
'mozilla_django_oidc',
'django_extensions',
'markdownx',
'rules.apps.AutodiscoverRulesConfig',
'imagekit',
'waffle',
'django_htmx',
'cachalot',
'corsheaders',
'tos',
'tos_i18n',
'impersonate',
'rosetta',
'django_q',
'notifications',
'link_check',
'users.apps.UsersConfig',
'lms_base',
'lms_tales.apps.LMSTalesConfig',
'lms_comments.apps.LMSCommentsConfig',
'lms_static_texts.apps.LMSStaticTextsConfig',
'tags.apps.TagsConfig',
'startpage.apps.StartpageConfig',
'search.apps.SearchConfig',
'utils.apps.UtilsConfig',
'dashboard.apps.DashboardConfig',
'reporting.apps.ReportingConfig',
'lms_notifications.apps.LMSNotificationsConfig',
'lms_roles.apps.LMSRolesConfig',
'storages',
'debug_toolbar') |
INTERNAL_IPS | ['127.0.0.1'] |
LANGUAGES | (('de', 'German'), ('en', 'English'), ('fr', 'French')) |
LANGUAGES_BIDI | ['he', 'ar', 'ar-dz', 'ckb', 'fa', 'ur'] |
LANGUAGE_CODE | 'de' |
LANGUAGE_COOKIE_AGE | None |
LANGUAGE_COOKIE_DOMAIN | None |
LANGUAGE_COOKIE_HTTPONLY | False |
LANGUAGE_COOKIE_NAME | 'django_language' |
LANGUAGE_COOKIE_PATH | '/' |
LANGUAGE_COOKIE_SAMESITE | None |
LANGUAGE_COOKIE_SECURE | False |
LOCALE_PATHS | ['/app/project/config/../locale'] |
LOCAL_APPS | ('users.apps.UsersConfig',
'lms_base',
'lms_tales.apps.LMSTalesConfig',
'lms_comments.apps.LMSCommentsConfig',
'lms_static_texts.apps.LMSStaticTextsConfig',
'tags.apps.TagsConfig',
'startpage.apps.StartpageConfig',
'search.apps.SearchConfig',
'utils.apps.UtilsConfig',
'dashboard.apps.DashboardConfig',
'reporting.apps.ReportingConfig',
'lms_notifications.apps.LMSNotificationsConfig',
'lms_roles.apps.LMSRolesConfig') |
LOGGING | {'disable_existing_loggers': False,
'formatters': {'verbose': {'format': '{asctime} {levelname} {name} {module} '
'{message}',
'style': '{'}},
'handlers': {'console': {'class': 'logging.StreamHandler',
'formatter': 'verbose'},
'mail_admins': {'class': 'django.utils.log.AdminEmailHandler',
'include_html': True,
'level': 'ERROR'}},
'loggers': {'django': {'handlers': ['console', 'mail_admins'],
'level': 'WARNING',
'propagate': True},
'django.request': {'handlers': ['console', 'mail_admins'],
'level': 'ERROR',
'propagate': False},
'django.security': {'handlers': ['console', 'mail_admins'],
'level': 'ERROR',
'propagate': False},
'fontTools': {'handlers': ['console'], 'level': 'ERROR'},
'tales': {'handlers': ['console'], 'level': 'INFO'},
'weasyprint': {'handlers': ['console'], 'level': 'ERROR'}},
'root': {'handlers': ['console'], 'level': 'WARNING'},
'version': 1} |
LOGGING_CONFIG | 'logging.config.dictConfig' |
LOGIN_REDIRECT_URL | '/' |
LOGIN_URL | 'account_login' |
LOGOUT_REDIRECT_URL | '/' |
MANAGERS | [] |
MARKDOWNX_EDITOR_RESIZABLE | True |
MARKDOWNX_IMAGE_MAX_SIZE | {'quality': 90, 'size': (1920, 5600)} |
MARKDOWNX_MARKDOWNIFY_FUNCTION | 'lms_base.utils.markdownify' |
MARKDOWNX_MARKDOWN_EXTENSIONS | ['markdown.extensions.extra',
'markdown.extensions.smarty',
'markdown.extensions.codehilite',
'markdown.extensions.fenced_code',
'markdown.extensions.attr_list',
'markdown.extensions.toc',
'utils.markdown_extensions',
'python_markdown_oembed_extension'] |
MARKDOWNX_MEDIA_PATH | 'markdownx/' |
MARKDOWNX_UPLOAD_URLS_PATH | '/markdownx/upload/' |
MARKDOWNX_URLS_PATH | '/markdownx/markdownify/' |
MEDIA_ROOT | '/app/project/media' |
MEDIA_URL | '/media/' |
MESSAGE_REAPPEAR_TIME | 600 |
MESSAGE_STORAGE | 'django.contrib.messages.storage.fallback.FallbackStorage' |
MIDDLEWARE | ['corsheaders.middleware.CorsMiddleware',
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'lms_tales.middleware.SetLocaleFoundInUserSettings',
'django.middleware.locale.LocaleMiddleware',
'django.middleware.common.CommonMiddleware',
'allauth.account.middleware.AccountMiddleware',
'impersonate.middleware.ImpersonateMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
'simple_history.middleware.HistoryRequestMiddleware',
'django.contrib.redirects.middleware.RedirectFallbackMiddleware',
'waffle.middleware.WaffleMiddleware',
'django_htmx.middleware.HtmxMiddleware',
'lms_tales.middleware.TalesUserAgreementMiddleware',
'lms_tales.middleware.ScheduledMessagesMiddleware',
'debug_toolbar.middleware.DebugToolbarMiddleware'] |
MIGRATION_MODULES | {'tos': 'lms_tales.migrate.tos'} |
MODELTRANSLATION_CUSTOM_FIELDS | ('JSONField',) |
MODELTRANSLATION_DEFAULT_LANGUAGE | 'de' |
MODELTRANSLATION_FALLBACK_LANGUAGES | ('de', 'en', 'fr') |
MONTH_DAY_FORMAT | 'F j' |
NOTIFICATIONS_NOTIFICATION_MODEL | 'notifications.Notification' |
NUMBER_GROUPING | 0 |
OIDC_OP_AUTHORIZATION_ENDPOINT | 'https://login.test.eduid.ch/idp/profile/oidc/authorize' |
OIDC_OP_JWKS_ENDPOINT | 'https://login.test.eduid.ch/idp/profile/oidc/keyset' |
OIDC_OP_TOKEN_ENDPOINT | '********************' |
OIDC_OP_USER_ENDPOINT | 'https://login.test.eduid.ch/idp/profile/oidc/userinfo' |
OIDC_RP_CLIENT_ID | 'unibas-tales' |
OIDC_RP_CLIENT_SECRET | '********************' |
OIDC_RP_SCOPES | 'openid email profile https://login.eduid.ch/authz/User.Read' |
OIDC_RP_SIGN_ALGO | 'RS256' |
OIDC_TOKEN_USE_BASIC_AUTH | '********************' |
PASSWORD_HASHERS | '********************' |
PASSWORD_RESET_TIMEOUT | '********************' |
PREPEND_WWW | False |
PROJECT_DIR | '/app/project/config/../' |
Q_CLUSTER | {'catch_up': False,
'django_redis': 'default',
'name': 'QCluster',
'retry': 600,
'timeout': 500,
'workers': 4} |
RELEASE_NAME | '' |
REQUIRE_SUPERUSER | True |
ROOT_URLCONF | 'config.urls' |
ROSETTA_MESSAGES_SOURCE_LANGUAGE_CODE | 'de' |
ROSETTA_MESSAGES_SOURCE_LANGUAGE_NAME | 'Deutsch' |
ROSETTA_SHOW_AT_ADMIN_PANEL | 'True' |
SECRET_KEY | '********************' |
SECRET_KEY_FALLBACKS | '********************' |
SECURE_CONTENT_TYPE_NOSNIFF | True |
SECURE_CROSS_ORIGIN_OPENER_POLICY | 'same-origin' |
SECURE_HSTS_INCLUDE_SUBDOMAINS | False |
SECURE_HSTS_PRELOAD | False |
SECURE_HSTS_SECONDS | 0 |
SECURE_PROXY_SSL_HEADER | ('HTTP_X_FORWARDED_PROTO', 'https') |
SECURE_REDIRECT_EXEMPT | [] |
SECURE_REFERRER_POLICY | 'same-origin' |
SECURE_SSL_HOST | None |
SECURE_SSL_REDIRECT | False |
SERVER_EMAIL | 'root@localhost' |
SESSION_CACHE_ALIAS | 'default' |
SESSION_COOKIE_AGE | 1209600 |
SESSION_COOKIE_DOMAIN | None |
SESSION_COOKIE_HTTPONLY | True |
SESSION_COOKIE_NAME | 'sessionid' |
SESSION_COOKIE_PATH | '/' |
SESSION_COOKIE_SAMESITE | None |
SESSION_COOKIE_SECURE | False |
SESSION_ENGINE | 'django.contrib.sessions.backends.cache' |
SESSION_EXPIRE_AT_BROWSER_CLOSE | False |
SESSION_FILE_PATH | None |
SESSION_SAVE_EVERY_REQUEST | False |
SESSION_SERIALIZER | 'django.contrib.sessions.serializers.JSONSerializer' |
SETTINGS_MODULE | 'config.settings.staging' |
SHORT_DATETIME_FORMAT | 'm/d/Y P' |
SHORT_DATE_FORMAT | 'm/d/Y' |
SIGNING_BACKEND | 'django.core.signing.TimestampSigner' |
SILENCED_SYSTEM_CHECKS | [] |
SITE_DOMAIN | 'https://nmc-tales-staging.nmc.unibas.ch/' |
SITE_ID | 1 |
SLACK_WEBHOOK | 'https://hooks.slack.com/services/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' |
STAGING_EMAIL_RECIPIENTS | ['notifications-nmc@unibas.ch'] |
STATICFILES_DIRS | ['/app/project/config/../static'] |
STATICFILES_FINDERS | ('django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder') |
STATICFILES_STORAGE | 'django.contrib.staticfiles.storage.StaticFilesStorage' |
STATIC_ROOT | '/app/project/config/../../staticfiles' |
STATIC_URL | '/static/' |
STORAGES | {'default': {'BACKEND': 'django.core.files.storage.FileSystemStorage'},
'staticfiles': {'BACKEND': 'django.contrib.staticfiles.storage.StaticFilesStorage'}} |
TALES_BASE_URL | 'https://tales.nmc.unibas.ch' |
TALES_VERSION | 'dev' |
TEMPLATES | [{'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': ['/app/project/config/../templates',
'/usr/local/lib/python3.11/site-packages/django/forms/templates'],
'OPTIONS': {'builtins': ['django.templatetags.i18n',
'django.templatetags.static'],
'context_processors': ['django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages',
'utils.context_processors.ci_info'],
'debug': False,
'loaders': ['django.template.loaders.filesystem.Loader',
'django.template.loaders.app_directories.Loader']}}] |
TEST_NON_SERIALIZED_APPS | [] |
TEST_RUNNER | 'django.test.runner.DiscoverRunner' |
THIRD_PARTY_APPS | ('debug_toolbar',) |
THOUSAND_SEPARATOR | ',' |
TIME_FORMAT | 'P' |
TIME_INPUT_FORMATS | ['%H:%M:%S', '%H:%M:%S.%f', '%H:%M'] |
TIME_ZONE | 'Europe/Zurich' |
USER_DEACTIVATION_AFTER_DAYS | 730 |
USER_DELETION_AFTER_DAYS | 912 |
USE_DEPRECATED_PYTZ | False |
USE_I18N | True |
USE_L10N | True |
USE_THOUSAND_SEPARATOR | False |
USE_TZ | True |
USE_X_FORWARDED_HOST | True |
USE_X_FORWARDED_PORT | False |
VIEW_CACHE_TTL | 600 |
WAFFLE_LOG_MISSING_FLAGS | 30 |
WAFFLE_LOG_MISSING_SAMPLES | 30 |
WAFFLE_LOG_MISSING_SWITCHES | 30 |
WSGI_APPLICATION | 'config.wsgi.application' |
X_FRAME_OPTIONS | 'DENY' |
YEAR_MONTH_FORMAT | 'F Y' |
Headers
Request headers
Key | Value |
---|---|
Accept | */* |
Accept-Encoding | gzip, br, zstd, deflate |
Cookie | => see Request panel |
Host | nmc-tales-staging.nmc.unibas.ch |
User-Agent | Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com) |
X-Forwarded-For | 3.145.113.9 |
X-Forwarded-Host | nmc-tales-staging.nmc.unibas.ch |
X-Forwarded-Proto | https |
Response headers
Key | Value |
---|---|
Content-Type | text/html; charset=utf-8 |
WSGI environ
Since the WSGI environ inherits the environment of the server, only a significant subset is shown below.
Key | Value |
---|---|
PATH_INFO | /en/exploring-possible-futures-44/firm-perspective-227/price-quantity-relations-the-mathematics-1286 |
QUERY_STRING | |
REMOTE_ADDR | 3.145.113.9 |
REMOTE_HOST | 3.145.113.9 |
REQUEST_METHOD | GET |
SCRIPT_NAME | |
SERVER_NAME | 172.19.0.5 |
SERVER_PORT | 8000 |
Request
View information
View function | Arguments | Keyword arguments | URL name |
---|---|---|---|
utils.decorators.cache_per_user.<locals>.decorator.<locals>.apply_cache |
() |
{'chapter_pk': 227,
'chapter_slug': 'firm-perspective',
'course_pk': 44,
'course_slug': 'exploring-possible-futures',
'pk': 1286,
'slug': 'price-quantity-relations-the-mathematics'} |
tales:step |
Cookies
Variable | Value |
---|---|
'csrftoken' |
'ieXOMC3ridyiCNdWcyPwMjUBVXW7kAsj' |
'sessionid' |
'3d7dk0io8hjebrk2uxiocwnicwxhjolv' |
Session data
Variable | Value |
---|---|
'oidc_login_next' |
'/de/writing-for-multimedia-45/writing-for-multimedia-231/write-like-you-speak-1360' |
'oidc_states' |
{'q1VczCoVU84YLlgHiKN1TOMFmCg4zO82': {'added_on': 1743808988.7868383,
'code_verifier': None,
'nonce': '6Hd9U7FAPS4MhKPo7Xx1NqmNaSviGKxF'}} |
No GET data
No POST data
SQL queries from 0 connections
No SQL queries were recorded during this request.
Static files (273 found, 7 used)
Static file path
- /app/project/static
Static file apps
- modeltranslation
- django.contrib.admin
- django_extensions
- markdownx
- django_htmx
- rosetta
- notifications
- debug_toolbar
Static files
- images/icon_tales_white.png
- /app/project/static/images/icon_tales_white.png
- images/icon_tales_transp.png
- /app/project/static/images/icon_tales_transp.png
- lms_base/css/lms_base.css
- /app/project/static/lms_base/css/lms_base.css
- lms_tales/css/lms_tales.css
- None
- lms_base/js/lms_base.js
- /app/project/static/lms_base/js/lms_base.js
- lms_tales/js/lms_tales.js
- /app/project/static/lms_tales/js/lms_tales.js
- images/uni-basel-logo-en.svg
- /app/project/static/images/uni-basel-logo-en.svg
django.contrib.staticfiles.finders.FileSystemFinder (123 files)
Path | Location |
---|---|
robots.txt | /app/project/static/robots.txt |
alphorn_07.jpg | /app/project/static/alphorn_07.jpg |
browserconfig.xml | /app/project/static/browserconfig.xml |
alphorn_11.jpg | /app/project/static/alphorn_11.jpg |
lottie/optimized_tales_banner2.mp4 | /app/project/static/lottie/optimized_tales_banner2.mp4 |
lottie/optimized_tales_banner_av1.webm | /app/project/static/lottie/optimized_tales_banner_av1.webm |
lottie/tales_banner3.mp4 | /app/project/static/lottie/tales_banner3.mp4 |
lottie/optimized_tales_banner3.webm | /app/project/static/lottie/optimized_tales_banner3.webm |
lottie/optimized_tales_banner2.webm | /app/project/static/lottie/optimized_tales_banner2.webm |
lottie/tales_banner.json | /app/project/static/lottie/tales_banner.json |
lottie/optimized_tales_banner3.mp4 | /app/project/static/lottie/optimized_tales_banner3.mp4 |
lottie/optimized_tales_banner_av1.mp4 | /app/project/static/lottie/optimized_tales_banner_av1.mp4 |
lottie/optimized_tales_banner.mp4 | /app/project/static/lottie/optimized_tales_banner.mp4 |
lottie/tales_banner2.mp4 | /app/project/static/lottie/tales_banner2.mp4 |
lms_base/font/nmc.woff | /app/project/static/lms_base/font/nmc.woff |
lms_base/font/icon-left.woff2 | /app/project/static/lms_base/font/icon-left.woff2 |
lms_base/font/nmc.woff2 | /app/project/static/lms_base/font/nmc.woff2 |
lms_base/font/nmc.eot | /app/project/static/lms_base/font/nmc.eot |
lms_base/font/icon-left.woff | /app/project/static/lms_base/font/icon-left.woff |
lms_base/font/nmc.svg | /app/project/static/lms_base/font/nmc.svg |
lms_base/font/icon-left.svg | /app/project/static/lms_base/font/icon-left.svg |
lms_base/font/nmc.ttf | /app/project/static/lms_base/font/nmc.ttf |
lms_base/font/icon-left.eot | /app/project/static/lms_base/font/icon-left.eot |
lms_base/font/icon-left.ttf | /app/project/static/lms_base/font/icon-left.ttf |
lms_base/css/lms_base.css | /app/project/static/lms_base/css/lms_base.css |
lms_base/css/lms_base.css.map | /app/project/static/lms_base/css/lms_base.css.map |
lms_base/js/lms_base.js | /app/project/static/lms_base/js/lms_base.js |
lms_base/js/bootstrap.bundle.min.js | /app/project/static/lms_base/js/bootstrap.bundle.min.js |
reporting/css/report_pdf.css.map | /app/project/static/reporting/css/report_pdf.css.map |
reporting/css/report_pdf.css | /app/project/static/reporting/css/report_pdf.css |
reporting/images/nmcunilogo.png | /app/project/static/reporting/images/nmcunilogo.png |
reporting/images/background.jpg | /app/project/static/reporting/images/background.jpg |
dropzone/dropzone.min.css | /app/project/static/dropzone/dropzone.min.css |
dropzone/dropzone-amd-module.min.js | /app/project/static/dropzone/dropzone-amd-module.min.js |
dropzone/basic.min.css | /app/project/static/dropzone/basic.min.css |
dropzone/dropzone.min.js | /app/project/static/dropzone/dropzone.min.js |
lms_tales/font/nmc.woff | /app/project/static/lms_tales/font/nmc.woff |
lms_tales/font/icon-left.woff2 | /app/project/static/lms_tales/font/icon-left.woff2 |
lms_tales/font/nmc.woff2 | /app/project/static/lms_tales/font/nmc.woff2 |
lms_tales/font/nmc.eot | /app/project/static/lms_tales/font/nmc.eot |
lms_tales/font/icon-left.woff | /app/project/static/lms_tales/font/icon-left.woff |
lms_tales/font/nmc.svg | /app/project/static/lms_tales/font/nmc.svg |
lms_tales/font/icon-left.svg | /app/project/static/lms_tales/font/icon-left.svg |
lms_tales/font/nmc.ttf | /app/project/static/lms_tales/font/nmc.ttf |
lms_tales/font/icon-left.eot | /app/project/static/lms_tales/font/icon-left.eot |
lms_tales/font/icon-left.ttf | /app/project/static/lms_tales/font/icon-left.ttf |
lms_tales/js/lms_tales.js | /app/project/static/lms_tales/js/lms_tales.js |
opos/4_4.html | /app/project/static/opos/4_4.html |
opos/4_3.html | /app/project/static/opos/4_3.html |
opos/4_5.html | /app/project/static/opos/4_5.html |
opos/4_1.html | /app/project/static/opos/4_1.html |
tales_editor/favicon.ico | /app/project/static/tales_editor/favicon.ico |
tales_editor/index.html | /app/project/static/tales_editor/index.html |
tales_editor/css/chunk-vendors.css | /app/project/static/tales_editor/css/chunk-vendors.css |
tales_editor/css/app.css | /app/project/static/tales_editor/css/app.css |
tales_editor/img/bootstrap-icons.svg | /app/project/static/tales_editor/img/bootstrap-icons.svg |
tales_editor/img/remixicon.symbol.svg | /app/project/static/tales_editor/img/remixicon.symbol.svg |
tales_editor/js/app.js | /app/project/static/tales_editor/js/app.js |
tales_editor/js/app.js.map | /app/project/static/tales_editor/js/app.js.map |
tales_editor/js/chunk-vendors.js | /app/project/static/tales_editor/js/chunk-vendors.js |
tales_editor/js/chunk-vendors.js.map | /app/project/static/tales_editor/js/chunk-vendors.js.map |
images/opos_map_xs.png | /app/project/static/images/opos_map_xs.png |
images/opos_map_xl.png | /app/project/static/images/opos_map_xl.png |
images/edu-id-button-gray.png | /app/project/static/images/edu-id-button-gray.png |
images/icon_tales_mint.png | /app/project/static/images/icon_tales_mint.png |
images/favicon.ico | /app/project/static/images/favicon.ico |
images/door.jpg | /app/project/static/images/door.jpg |
images/icon_tales_transp_32x32.png | /app/project/static/images/icon_tales_transp_32x32.png |
images/uni-basel-logo-de.svg | /app/project/static/images/uni-basel-logo-de.svg |
images/raymond_ammann.jpg | /app/project/static/images/raymond_ammann.jpg |
images/help_en.jpg | /app/project/static/images/help_en.jpg |
images/opos_map_xs.avif | /app/project/static/images/opos_map_xs.avif |
images/opos_map_md.png | /app/project/static/images/opos_map_md.png |
images/help_de.jpg | /app/project/static/images/help_de.jpg |
images/bild.png | /app/project/static/images/bild.png |
images/help.jpg | /app/project/static/images/help.jpg |
images/Hochformat.jpg | /app/project/static/images/Hochformat.jpg |
images/empty_classroom.jpg | /app/project/static/images/empty_classroom.jpg |
images/uni-basel-logo-de.png | /app/project/static/images/uni-basel-logo-de.png |
images/contact-side-image-1.jpg | /app/project/static/images/contact-side-image-1.jpg |
images/icon_tales_white.png | /app/project/static/images/icon_tales_white.png |
images/portalflag.png | /app/project/static/images/portalflag.png |
images/uni-basel-logo-en.svg | /app/project/static/images/uni-basel-logo-en.svg |
images/contact-side-image-2.jpg | /app/project/static/images/contact-side-image-2.jpg |
images/alp_und_hirtenhorn.jpg | /app/project/static/images/alp_und_hirtenhorn.jpg |
images/icon_tales_transp.png | /app/project/static/images/icon_tales_transp.png |
images/Weltkarte_Opos.png | /app/project/static/images/Weltkarte_Opos.png |
images/batkitty.jpg | /app/project/static/images/batkitty.jpg |
images/help_fr.jpg | /app/project/static/images/help_fr.jpg |
nahtkurs_glossar/antikoagu.jpg | /app/project/static/nahtkurs_glossar/antikoagu.jpg |
nahtkurs_glossar/anamnese.jpg | /app/project/static/nahtkurs_glossar/anamnese.jpg |
nahtkurs_glossar/wundinfektion.jpg | /app/project/static/nahtkurs_glossar/wundinfektion.jpg |
nahtkurs_glossar/tensilestength.jpg | /app/project/static/nahtkurs_glossar/tensilestength.jpg |
nahtkurs_glossar/glucose.jpg | /app/project/static/nahtkurs_glossar/glucose.jpg |
nahtkurs_glossar/nacl.jpg | /app/project/static/nahtkurs_glossar/nacl.jpg |
sounds/temperiert_nr_7.mp3 | /app/project/static/sounds/temperiert_nr_7.mp3 |
sounds/alphorn_13.mp3 | /app/project/static/sounds/alphorn_13.mp3 |
sounds/alphorn_05.mp3 | /app/project/static/sounds/alphorn_05.mp3 |
sounds/alphorn_11.mp3 | /app/project/static/sounds/alphorn_11.mp3 |
sounds/naturton_nr_7.mp3 | /app/project/static/sounds/naturton_nr_7.mp3 |
sounds/hirtenhorn_04.mp3 | /app/project/static/sounds/hirtenhorn_04.mp3 |
sounds/alphorn_14.mp3 | /app/project/static/sounds/alphorn_14.mp3 |
sounds/alphorn_01.mp3 | /app/project/static/sounds/alphorn_01.mp3 |
sounds/alphorn_12.mp3 | /app/project/static/sounds/alphorn_12.mp3 |
sounds/alphorn_02.mp3 | /app/project/static/sounds/alphorn_02.mp3 |
sounds/alphorn_09.mp3 | /app/project/static/sounds/alphorn_09.mp3 |
sounds/alphorn_04.mp3 | /app/project/static/sounds/alphorn_04.mp3 |
sounds/alphorn_15.mp3 | /app/project/static/sounds/alphorn_15.mp3 |
sounds/hirtenhorn_07.mp3 | /app/project/static/sounds/hirtenhorn_07.mp3 |
sounds/alphorn_08.mp3 | /app/project/static/sounds/alphorn_08.mp3 |
sounds/alphorn_03.mp3 | /app/project/static/sounds/alphorn_03.mp3 |
sounds/hirtenhorn_02.mp3 | /app/project/static/sounds/hirtenhorn_02.mp3 |
sounds/alphorn_10.mp3 | /app/project/static/sounds/alphorn_10.mp3 |
sounds/hirtenhorn_01.mp3 | /app/project/static/sounds/hirtenhorn_01.mp3 |
sounds/hirtenhorn_06.mp3 | /app/project/static/sounds/hirtenhorn_06.mp3 |
sounds/alphorn_07.mp3 | /app/project/static/sounds/alphorn_07.mp3 |
sounds/temperiert_nr_11.mp3 | /app/project/static/sounds/temperiert_nr_11.mp3 |
sounds/hirtenhorn_08.mp3 | /app/project/static/sounds/hirtenhorn_08.mp3 |
sounds/naturton_nr_11.mp3 | /app/project/static/sounds/naturton_nr_11.mp3 |
sounds/alphorn_16.mp3 | /app/project/static/sounds/alphorn_16.mp3 |
sounds/hirtenhorn_05.mp3 | /app/project/static/sounds/hirtenhorn_05.mp3 |
sounds/hirtenhorn_03.mp3 | /app/project/static/sounds/hirtenhorn_03.mp3 |
sounds/alphorn_06.mp3 | /app/project/static/sounds/alphorn_06.mp3 |
django.contrib.staticfiles.finders.AppDirectoriesFinder (150 files)
Path | Location |
---|---|
modeltranslation/css/tabbed_translation_fields.css | /usr/local/lib/python3.11/site-packages/modeltranslation/static/modeltranslation/css/tabbed_translation_fields.css |
modeltranslation/js/clearable_inputs.js | /usr/local/lib/python3.11/site-packages/modeltranslation/static/modeltranslation/js/clearable_inputs.js |
modeltranslation/js/tabbed_translation_fields.js | /usr/local/lib/python3.11/site-packages/modeltranslation/static/modeltranslation/js/tabbed_translation_fields.js |
modeltranslation/js/force_jquery.js | /usr/local/lib/python3.11/site-packages/modeltranslation/static/modeltranslation/js/force_jquery.js |
admin/css/autocomplete.css | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/autocomplete.css |
admin/css/responsive.css | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/responsive.css |
admin/css/widgets.css | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/widgets.css |
admin/css/changelists.css | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/changelists.css |
admin/css/dark_mode.css | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/dark_mode.css |
admin/css/responsive_rtl.css | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/responsive_rtl.css |
admin/css/nav_sidebar.css | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/nav_sidebar.css |
admin/css/dashboard.css | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/dashboard.css |
admin/css/forms.css | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/forms.css |
admin/css/rtl.css | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/rtl.css |
admin/css/login.css | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/login.css |
admin/css/base.css | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/base.css |
admin/css/vendor/select2/select2.min.css | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/vendor/select2/select2.min.css |
admin/css/vendor/select2/select2.css | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/vendor/select2/select2.css |
admin/css/vendor/select2/LICENSE-SELECT2.md | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/vendor/select2/LICENSE-SELECT2.md |
admin/img/icon-clock.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-clock.svg |
admin/img/sorting-icons.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/sorting-icons.svg |
admin/img/icon-alert.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-alert.svg |
admin/img/icon-changelink.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-changelink.svg |
admin/img/selector-icons.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/selector-icons.svg |
admin/img/calendar-icons.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/calendar-icons.svg |
admin/img/tooltag-arrowright.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/tooltag-arrowright.svg |
admin/img/inline-delete.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/inline-delete.svg |
admin/img/icon-yes.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-yes.svg |
admin/img/icon-unknown-alt.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-unknown-alt.svg |
admin/img/icon-viewlink.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-viewlink.svg |
admin/img/search.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/search.svg |
admin/img/icon-deletelink.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-deletelink.svg |
admin/img/README.txt | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/README.txt |
admin/img/LICENSE | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/LICENSE |
admin/img/icon-calendar.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-calendar.svg |
admin/img/tooltag-add.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/tooltag-add.svg |
admin/img/icon-unknown.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-unknown.svg |
admin/img/icon-addlink.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-addlink.svg |
admin/img/icon-no.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-no.svg |
admin/img/gis/move_vertex_off.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/gis/move_vertex_off.svg |
admin/img/gis/move_vertex_on.svg | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/gis/move_vertex_on.svg |
admin/js/SelectBox.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/SelectBox.js |
admin/js/jquery.init.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/jquery.init.js |
admin/js/inlines.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/inlines.js |
admin/js/collapse.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/collapse.js |
admin/js/filters.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/filters.js |
admin/js/change_form.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/change_form.js |
admin/js/autocomplete.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/autocomplete.js |
admin/js/nav_sidebar.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/nav_sidebar.js |
admin/js/popup_response.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/popup_response.js |
admin/js/SelectFilter2.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/SelectFilter2.js |
admin/js/actions.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/actions.js |
admin/js/core.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/core.js |
admin/js/cancel.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/cancel.js |
admin/js/prepopulate.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/prepopulate.js |
admin/js/urlify.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/urlify.js |
admin/js/calendar.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/calendar.js |
admin/js/prepopulate_init.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/prepopulate_init.js |
admin/js/theme.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/theme.js |
admin/js/admin/DateTimeShortcuts.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/admin/DateTimeShortcuts.js |
admin/js/admin/RelatedObjectLookups.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/admin/RelatedObjectLookups.js |
admin/js/vendor/select2/select2.full.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/select2.full.js |
admin/js/vendor/select2/select2.full.min.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/select2.full.min.js |
admin/js/vendor/select2/LICENSE.md | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/LICENSE.md |
admin/js/vendor/select2/i18n/zh-CN.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/zh-CN.js |
admin/js/vendor/select2/i18n/sr-Cyrl.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sr-Cyrl.js |
admin/js/vendor/select2/i18n/uk.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/uk.js |
admin/js/vendor/select2/i18n/ar.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ar.js |
admin/js/vendor/select2/i18n/ka.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ka.js |
admin/js/vendor/select2/i18n/bn.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/bn.js |
admin/js/vendor/select2/i18n/pt.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/pt.js |
admin/js/vendor/select2/i18n/hi.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/hi.js |
admin/js/vendor/select2/i18n/dsb.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/dsb.js |
admin/js/vendor/select2/i18n/bs.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/bs.js |
admin/js/vendor/select2/i18n/ru.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ru.js |
admin/js/vendor/select2/i18n/ms.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ms.js |
admin/js/vendor/select2/i18n/et.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/et.js |
admin/js/vendor/select2/i18n/sl.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sl.js |
admin/js/vendor/select2/i18n/he.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/he.js |
admin/js/vendor/select2/i18n/is.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/is.js |
admin/js/vendor/select2/i18n/cs.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/cs.js |
admin/js/vendor/select2/i18n/sq.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sq.js |
admin/js/vendor/select2/i18n/sv.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sv.js |
admin/js/vendor/select2/i18n/ne.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ne.js |
admin/js/vendor/select2/i18n/ko.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ko.js |
admin/js/vendor/select2/i18n/vi.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/vi.js |
admin/js/vendor/select2/i18n/ca.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ca.js |
admin/js/vendor/select2/i18n/id.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/id.js |
admin/js/vendor/select2/i18n/nb.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/nb.js |
admin/js/vendor/select2/i18n/hr.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/hr.js |
admin/js/vendor/select2/i18n/af.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/af.js |
admin/js/vendor/select2/i18n/de.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/de.js |
admin/js/vendor/select2/i18n/mk.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/mk.js |
admin/js/vendor/select2/i18n/hy.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/hy.js |
admin/js/vendor/select2/i18n/it.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/it.js |
admin/js/vendor/select2/i18n/hu.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/hu.js |
admin/js/vendor/select2/i18n/ja.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ja.js |
admin/js/vendor/select2/i18n/sk.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sk.js |
admin/js/vendor/select2/i18n/hsb.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/hsb.js |
admin/js/vendor/select2/i18n/ro.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ro.js |
admin/js/vendor/select2/i18n/en.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/en.js |
admin/js/vendor/select2/i18n/el.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/el.js |
admin/js/vendor/select2/i18n/fa.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/fa.js |
admin/js/vendor/select2/i18n/pt-BR.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/pt-BR.js |
admin/js/vendor/select2/i18n/da.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/da.js |
admin/js/vendor/select2/i18n/sr.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sr.js |
admin/js/vendor/select2/i18n/ps.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ps.js |
admin/js/vendor/select2/i18n/lt.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/lt.js |
admin/js/vendor/select2/i18n/az.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/az.js |
admin/js/vendor/select2/i18n/fr.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/fr.js |
admin/js/vendor/select2/i18n/fi.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/fi.js |
admin/js/vendor/select2/i18n/tk.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/tk.js |
admin/js/vendor/select2/i18n/th.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/th.js |
admin/js/vendor/select2/i18n/gl.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/gl.js |
admin/js/vendor/select2/i18n/eu.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/eu.js |
admin/js/vendor/select2/i18n/es.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/es.js |
admin/js/vendor/select2/i18n/km.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/km.js |
admin/js/vendor/select2/i18n/bg.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/bg.js |
admin/js/vendor/select2/i18n/lv.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/lv.js |
admin/js/vendor/select2/i18n/zh-TW.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/zh-TW.js |
admin/js/vendor/select2/i18n/pl.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/pl.js |
admin/js/vendor/select2/i18n/tr.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/tr.js |
admin/js/vendor/select2/i18n/nl.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/nl.js |
admin/js/vendor/xregexp/xregexp.min.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/xregexp/xregexp.min.js |
admin/js/vendor/xregexp/LICENSE.txt | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/xregexp/LICENSE.txt |
admin/js/vendor/xregexp/xregexp.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/xregexp/xregexp.js |
admin/js/vendor/jquery/jquery.min.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/jquery/jquery.min.js |
admin/js/vendor/jquery/jquery.js | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/jquery/jquery.js |
admin/js/vendor/jquery/LICENSE.txt | /usr/local/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/jquery/LICENSE.txt |
django_extensions/css/jquery.autocomplete.css | /usr/local/lib/python3.11/site-packages/django_extensions/static/django_extensions/css/jquery.autocomplete.css |
django_extensions/img/indicator.gif | /usr/local/lib/python3.11/site-packages/django_extensions/static/django_extensions/img/indicator.gif |
django_extensions/js/jquery.ajaxQueue.js | /usr/local/lib/python3.11/site-packages/django_extensions/static/django_extensions/js/jquery.ajaxQueue.js |
django_extensions/js/jquery.autocomplete.js | /usr/local/lib/python3.11/site-packages/django_extensions/static/django_extensions/js/jquery.autocomplete.js |
django_extensions/js/jquery.bgiframe.js | /usr/local/lib/python3.11/site-packages/django_extensions/static/django_extensions/js/jquery.bgiframe.js |
markdownx/admin/css/markdownx.css | /usr/local/lib/python3.11/site-packages/markdownx/static/markdownx/admin/css/markdownx.css |
markdownx/admin/css/markdownx.min.css | /usr/local/lib/python3.11/site-packages/markdownx/static/markdownx/admin/css/markdownx.min.css |
markdownx/js/markdownx.min.js | /usr/local/lib/python3.11/site-packages/markdownx/static/markdownx/js/markdownx.min.js |
markdownx/js/markdownx.js | /usr/local/lib/python3.11/site-packages/markdownx/static/markdownx/js/markdownx.js |
django-htmx.js | /usr/local/lib/python3.11/site-packages/django_htmx/static/django-htmx.js |
admin/rosetta/css/rosetta.css | /usr/local/lib/python3.11/site-packages/rosetta/static/admin/rosetta/css/rosetta.css |
admin/rosetta/js/rosetta.js | /usr/local/lib/python3.11/site-packages/rosetta/static/admin/rosetta/js/rosetta.js |
admin/img/icon_searchbox_rosetta.png | /usr/local/lib/python3.11/site-packages/rosetta/static/admin/img/icon_searchbox_rosetta.png |
notifications/notify.js | /usr/local/lib/python3.11/site-packages/notifications/static/notifications/notify.js |
debug_toolbar/css/toolbar.css | /usr/local/lib/python3.11/site-packages/debug_toolbar/static/debug_toolbar/css/toolbar.css |
debug_toolbar/css/print.css | /usr/local/lib/python3.11/site-packages/debug_toolbar/static/debug_toolbar/css/print.css |
debug_toolbar/js/utils.js | /usr/local/lib/python3.11/site-packages/debug_toolbar/static/debug_toolbar/js/utils.js |
debug_toolbar/js/toolbar.js | /usr/local/lib/python3.11/site-packages/debug_toolbar/static/debug_toolbar/js/toolbar.js |
debug_toolbar/js/history.js | /usr/local/lib/python3.11/site-packages/debug_toolbar/static/debug_toolbar/js/history.js |
debug_toolbar/js/timer.js | /usr/local/lib/python3.11/site-packages/debug_toolbar/static/debug_toolbar/js/timer.js |
debug_toolbar/js/redirect.js | /usr/local/lib/python3.11/site-packages/debug_toolbar/static/debug_toolbar/js/redirect.js |
Templates (35 rendered)
Template paths
- /app/project/templates
- /usr/local/lib/python3.11/site-packages/django/forms/templates
Templates
- step/step-title.html
- /app/project/lms_tales/templates/step/step-title.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'fr', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'pZYYkGMDMrzItk0JzKjU8YBFtH6hYoWZx3LCW8FUUuXQVX3vB8YgK7l6euSe8Oe8'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/fr/from-ink-to-sound-32/coordination-in-rhythm-modal-notation-189/extensio-in-fraction-modi-962'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c95aa12d0>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c95aa12d0>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': False, 'available_languages': [('en', 'English')], 'course': <TalesCourse: From Ink to Sound>, 'course_contact': '', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: Extensio in fraction modi>, 'talesstep': <TalesStep: Extensio in fraction modi>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c94977090>} {'block': <Block Node: breadcrumb-bar. Contents: [<TextNode: '\n <div id="tit'>, <Block Node: sidebar-arrow. Contents: [<TextNode: '\n <div'>, <django.template.library.SimpleNode object at 0x706c8fc3d2d0>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x706c8dc94110>, <TextNode: '</span>\n '>]>, <TextNode: '\n <div cla'>, <Block Node: breadcrumb. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>]>} {'block': <Block Node: breadcrumb. Contents: [<TextNode: '\n '>, <IncludeNode: template=<FilterExpression '"step/step-title.html"'>>, <TextNode: '\n'>]>}
- components/header.html
- /app/project/templates/components/header.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'en', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'mknyK8EdZDNkC9MDeKMAj0sWUbkma2OPuoacmAxu7Gbs4MPpg8rWV9cnFY6jks6Y'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/en/allergies-when-the-immune-system-backfires-41/allergy-the-history-of-a-misunderstanding-218/allergy-mirroring-infection-1196'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c941dff10>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c941dff10>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': True, 'available_languages': [('en', 'English')], 'course': <TalesCourse: Allergies: When the Immune System Backfires>, 'course_contact': '', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: Allergy mirroring infection>, 'talesstep': <TalesStep: Allergy mirroring infection>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c8de71190>} {'block': <Block Node: header. Contents: [<TextNode: '\n '>, <IncludeNode: template=<FilterExpression '"components/header.html"'>>, <TextNode: '\n '>]>}
- components/sidebar-navigation.html
- /app/project/templates/components/sidebar-navigation.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'en', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'mknyK8EdZDNkC9MDeKMAj0sWUbkma2OPuoacmAxu7Gbs4MPpg8rWV9cnFY6jks6Y'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/en/allergies-when-the-immune-system-backfires-41/allergy-the-history-of-a-misunderstanding-218/allergy-mirroring-infection-1196'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c941dff10>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c941dff10>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': True, 'available_languages': [('en', 'English')], 'course': <TalesCourse: Allergies: When the Immune System Backfires>, 'course_contact': '', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: Allergy mirroring infection>, 'talesstep': <TalesStep: Allergy mirroring infection>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c8de71190>} {'block': <Block Node: sidebar-nav. Contents: [<TextNode: '\n <nav id="sid'>, <django.template.library.SimpleNode object at 0x706c8ddaf250>, <TextNode: '>\n '>, <django.templatetags.i18n.TranslateNode object at 0x706c8ddaf210>, <TextNode: '</span>\n '>, <IfNode>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x706c95d1e090>, <TextNode: '>\n '>, <django.templatetags.i18n.TranslateNode object at 0x706c95d1fe10>, <TextNode: '</span>\n '>, <Block Node: navigation. Contents: [<TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>} {'block': <Block Node: navigation. Contents: [<TextNode: '\n '>, <IncludeNode: template=<FilterExpression '"components/sidebar-navigation.html"'>>, <TextNode: '\n'>]>}
- step/step_home.html
- /app/project/lms_tales/templates/step/step_home.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'fr', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'IVLcENfMY4wIItPZXyHzU1j4o9w0b5oaQZyQgf8367UQa6SLZWmVwa3v9WiXlvGj'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/fr/literature-in-the-digital-age-11/close-reading-32/how-can-we-close-read-a-poem-part-ii-163'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c8fb99290>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c8fb99290>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': False, 'available_languages': [('en', 'English')], 'course': <TalesCourse: Literature in the Digital Age>, 'course_contact': 'Prof. Dr. Philipp Schweighauser \r\n' 'Departement Sprach- und Literaturwissenschaften \r\n' 'Nadelberg 4 \r\n' '4051 Basel\r\n' '\r\n' 'Phone: [+41 (0)61 207 27 84](tel:+41612072784) \r\n' 'Email: ' '[ph.schweighauser@unibas.ch](mailto:ph.schweighauser@unibas.ch)\r\n' '\r\n' 'Philipp Schweighauser is Associate Professor and Head of ' 'American and General Literatures at the University of ' 'Basel. He is the author of The Noises of American ' 'Literature, 1890 - 1985: Toward a History of Literary ' 'Acoustics (University Press of Florida, 2006) and ' 'Beautiful Deceptions: European Aesthetics, the Early ' 'American Novel, and Illusionist Art (University of ' 'Virginia Press, 2016).', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: How can we close-read a poem? Part II>, 'talesstep': <TalesStep: How can we close-read a poem? Part II>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c8d79fe10>}
- lms_tales_base.html
- /app/project/templates/lms_tales_base.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'fr', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'IVLcENfMY4wIItPZXyHzU1j4o9w0b5oaQZyQgf8367UQa6SLZWmVwa3v9WiXlvGj'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/fr/literature-in-the-digital-age-11/close-reading-32/how-can-we-close-read-a-poem-part-ii-163'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c8fb99290>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c8fb99290>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': False, 'available_languages': [('en', 'English')], 'course': <TalesCourse: Literature in the Digital Age>, 'course_contact': 'Prof. Dr. Philipp Schweighauser \r\n' 'Departement Sprach- und Literaturwissenschaften \r\n' 'Nadelberg 4 \r\n' '4051 Basel\r\n' '\r\n' 'Phone: [+41 (0)61 207 27 84](tel:+41612072784) \r\n' 'Email: ' '[ph.schweighauser@unibas.ch](mailto:ph.schweighauser@unibas.ch)\r\n' '\r\n' 'Philipp Schweighauser is Associate Professor and Head of ' 'American and General Literatures at the University of ' 'Basel. He is the author of The Noises of American ' 'Literature, 1890 - 1985: Toward a History of Literary ' 'Acoustics (University Press of Florida, 2006) and ' 'Beautiful Deceptions: European Aesthetics, the Early ' 'American Novel, and Illusionist Art (University of ' 'Virginia Press, 2016).', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: How can we close-read a poem? Part II>, 'talesstep': <TalesStep: How can we close-read a poem? Part II>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c8d79fe10>}
- base.html
- /app/project/templates/base.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'fr', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'IVLcENfMY4wIItPZXyHzU1j4o9w0b5oaQZyQgf8367UQa6SLZWmVwa3v9WiXlvGj'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/fr/literature-in-the-digital-age-11/close-reading-32/how-can-we-close-read-a-poem-part-ii-163'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c8fb99290>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c8fb99290>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': False, 'available_languages': [('en', 'English')], 'course': <TalesCourse: Literature in the Digital Age>, 'course_contact': 'Prof. Dr. Philipp Schweighauser \r\n' 'Departement Sprach- und Literaturwissenschaften \r\n' 'Nadelberg 4 \r\n' '4051 Basel\r\n' '\r\n' 'Phone: [+41 (0)61 207 27 84](tel:+41612072784) \r\n' 'Email: ' '[ph.schweighauser@unibas.ch](mailto:ph.schweighauser@unibas.ch)\r\n' '\r\n' 'Philipp Schweighauser is Associate Professor and Head of ' 'American and General Literatures at the University of ' 'Basel. He is the author of The Noises of American ' 'Literature, 1890 - 1985: Toward a History of Literary ' 'Acoustics (University Press of Florida, 2006) and ' 'Beautiful Deceptions: European Aesthetics, the Early ' 'American Novel, and Illusionist Art (University of ' 'Virginia Press, 2016).', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: How can we close-read a poem? Part II>, 'talesstep': <TalesStep: How can we close-read a poem? Part II>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c8d79fe10>}
- step/step_home.html
- /app/project/lms_tales/templates/step/step_home.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'fr', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'q6PtrbdXVgH93ZKhBEQTx8vIAqCYWpeRyaC73D6e3j5hvCN3D2vf9hf9ldoV6Pw0'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/fr/literature-in-the-digital-age-11/how-we-read-today-31/what-professional-reading-strategies-are-there-152'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c948ec610>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c948ec610>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': False, 'available_languages': [('en', 'English')], 'course': <TalesCourse: Literature in the Digital Age>, 'course_contact': 'Prof. Dr. Philipp Schweighauser \r\n' 'Departement Sprach- und Literaturwissenschaften \r\n' 'Nadelberg 4 \r\n' '4051 Basel\r\n' '\r\n' 'Phone: [+41 (0)61 207 27 84](tel:+41612072784) \r\n' 'Email: ' '[ph.schweighauser@unibas.ch](mailto:ph.schweighauser@unibas.ch)\r\n' '\r\n' 'Philipp Schweighauser is Associate Professor and Head of ' 'American and General Literatures at the University of ' 'Basel. He is the author of The Noises of American ' 'Literature, 1890 - 1985: Toward a History of Literary ' 'Acoustics (University Press of Florida, 2006) and ' 'Beautiful Deceptions: European Aesthetics, the Early ' 'American Novel, and Illusionist Art (University of ' 'Virginia Press, 2016).', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: What professional reading strategies are there?>, 'talesstep': <TalesStep: What professional reading strategies are there?>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c8fb66150>}
- cachalot/panel.html
- /usr/local/lib/python3.11/site-packages/cachalot/templates/cachalot/panel.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'invalidations_per_db': dict_items([('default', [('django_q', 'Failure', datetime.datetime(2025, 4, 5, 1, 0, 29, 664879)), ('lms_tales', 'CourseMetrics', datetime.datetime(2025, 4, 5, 1, 0, 29, 627596)), ('django_q', 'Schedule', datetime.datetime(2025, 4, 5, 1, 0, 29, 242066)), ('search', 'FulltextSearchModel', datetime.datetime(2025, 4, 5, 0, 0, 29, 805815)), ('reporting', 'Report', datetime.datetime(2025, 4, 4, 9, 5, 11, 893340)), ('lms_roles', 'CourseRole', datetime.datetime(2025, 2, 11, 12, 14, 18, 842206)), ('search', 'TrigramSearchModel', datetime.datetime(2025, 2, 11, 12, 14, 18, 831449)), ('startpage', 'SliderItem', datetime.datetime(2025, 2, 11, 12, 14, 18, 824687)), ('startpage', 'CategoryCourse', datetime.datetime(2025, 2, 11, 12, 14, 18, 824687)), ('tags', 'Category', datetime.datetime(2025, 2, 11, 12, 14, 18, 817718)), ('tags', 'Tag', datetime.datetime(2025, 2, 11, 12, 14, 18, 817718)), ('lms_static_texts', 'StaticText', datetime.datetime(2025, 2, 11, 12, 14, 18, 810671)), ('lms_static_texts', 'HistoricalStaticText', datetime.datetime(2025, 2, 11, 12, 14, 18, 810671)), ('lms_comments', 'Comment', datetime.datetime(2025, 2, 11, 12, 14, 18, 779678)), ('lms_comments', 'Reply', datetime.datetime(2025, 2, 11, 12, 14, 18, 779678)), ('lms_comments', 'Reaction', datetime.datetime(2025, 2, 11, 12, 14, 18, 779678)), ('lms_comments', 'Flag', datetime.datetime(2025, 2, 11, 12, 14, 18, 779678)), ('lms_tales', 'TalesStep', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'TalesStepFileNew', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'TalesStepFile', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'TalesCourseFile', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'TalesChapter', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'TalesCourse', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'TalesAuthor', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'TalesPartner', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'TalesGlossaryItem', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'TalesPath', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'TalesPathStep', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'TalesCourseRun', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'TalesCourseRunStep', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'ScheduledMessage', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'HistoricalTalesStep', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'HistoricalTalesStepFile', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'HistoricalTalesChapter', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'HistoricalTalesCourse', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'HistoricalTalesPath', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_base', 'GlossaryMixin', datetime.datetime(2025, 2, 11, 12, 14, 18, 734014)), ('lms_base', 'GlossaryItemMixin', datetime.datetime(2025, 2, 11, 12, 14, 18, 734014)), ('users', 'User', datetime.datetime(2025, 2, 11, 12, 14, 18, 726994)), ('users', 'UserSettings', datetime.datetime(2025, 2, 11, 12, 14, 18, 726994)), ('auth', 'Permission', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('auth', 'Group', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('contenttypes', 'ContentType', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('sessions', 'Session', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('sites', 'Site', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('flatpages', 'FlatPage', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('admin', 'LogEntry', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('redirects', 'Redirect', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('account', 'EmailAddress', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('account', 'EmailConfirmation', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('socialaccount', 'SocialApp', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('socialaccount', 'SocialAccount', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('socialaccount', 'SocialToken', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('waffle', 'Flag', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('waffle', 'Switch', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('waffle', 'Sample', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('tos', 'TermsOfService', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('tos', 'UserAgreement', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('impersonate', 'ImpersonationLog', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('django_q', 'OrmQ', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('notifications', 'Notification', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815))])])}
- step/step_home.html
- /app/project/lms_tales/templates/step/step_home.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'en', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'OOMY7ypXwGVieCpwoMg3zX89urPkH7G2WSzCJ0ieEJjqGfsiqaVpb6SAfeBhRxYb'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/en/literature-in-the-digital-age-11/close-reading-32/how-does-close-reading-work-157'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c8d7ff1d0>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c8d7ff1d0>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': True, 'available_languages': [('en', 'English')], 'course': <TalesCourse: Literature in the Digital Age>, 'course_contact': 'Prof. Dr. Philipp Schweighauser \r\n' 'Departement Sprach- und Literaturwissenschaften \r\n' 'Nadelberg 4 \r\n' '4051 Basel\r\n' '\r\n' 'Phone: [+41 (0)61 207 27 84](tel:+41612072784) \r\n' 'Email: ' '[ph.schweighauser@unibas.ch](mailto:ph.schweighauser@unibas.ch)\r\n' '\r\n' 'Philipp Schweighauser is Associate Professor and Head of ' 'American and General Literatures at the University of ' 'Basel. He is the author of The Noises of American ' 'Literature, 1890 - 1985: Toward a History of Literary ' 'Acoustics (University Press of Florida, 2006) and ' 'Beautiful Deceptions: European Aesthetics, the Early ' 'American Novel, and Illusionist Art (University of ' 'Virginia Press, 2016).', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: How does close reading work?>, 'talesstep': <TalesStep: How does close reading work?>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c8f75ed10>}
- lms_tales_base.html
- /app/project/templates/lms_tales_base.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'fr', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'q6PtrbdXVgH93ZKhBEQTx8vIAqCYWpeRyaC73D6e3j5hvCN3D2vf9hf9ldoV6Pw0'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/fr/literature-in-the-digital-age-11/how-we-read-today-31/what-professional-reading-strategies-are-there-152'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c948ec610>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c948ec610>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': False, 'available_languages': [('en', 'English')], 'course': <TalesCourse: Literature in the Digital Age>, 'course_contact': 'Prof. Dr. Philipp Schweighauser \r\n' 'Departement Sprach- und Literaturwissenschaften \r\n' 'Nadelberg 4 \r\n' '4051 Basel\r\n' '\r\n' 'Phone: [+41 (0)61 207 27 84](tel:+41612072784) \r\n' 'Email: ' '[ph.schweighauser@unibas.ch](mailto:ph.schweighauser@unibas.ch)\r\n' '\r\n' 'Philipp Schweighauser is Associate Professor and Head of ' 'American and General Literatures at the University of ' 'Basel. He is the author of The Noises of American ' 'Literature, 1890 - 1985: Toward a History of Literary ' 'Acoustics (University Press of Florida, 2006) and ' 'Beautiful Deceptions: European Aesthetics, the Early ' 'American Novel, and Illusionist Art (University of ' 'Virginia Press, 2016).', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: What professional reading strategies are there?>, 'talesstep': <TalesStep: What professional reading strategies are there?>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c8fb66150>}
- lms_tales_base.html
- /app/project/templates/lms_tales_base.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'en', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'OOMY7ypXwGVieCpwoMg3zX89urPkH7G2WSzCJ0ieEJjqGfsiqaVpb6SAfeBhRxYb'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/en/literature-in-the-digital-age-11/close-reading-32/how-does-close-reading-work-157'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c8d7ff1d0>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c8d7ff1d0>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': True, 'available_languages': [('en', 'English')], 'course': <TalesCourse: Literature in the Digital Age>, 'course_contact': 'Prof. Dr. Philipp Schweighauser \r\n' 'Departement Sprach- und Literaturwissenschaften \r\n' 'Nadelberg 4 \r\n' '4051 Basel\r\n' '\r\n' 'Phone: [+41 (0)61 207 27 84](tel:+41612072784) \r\n' 'Email: ' '[ph.schweighauser@unibas.ch](mailto:ph.schweighauser@unibas.ch)\r\n' '\r\n' 'Philipp Schweighauser is Associate Professor and Head of ' 'American and General Literatures at the University of ' 'Basel. He is the author of The Noises of American ' 'Literature, 1890 - 1985: Toward a History of Literary ' 'Acoustics (University Press of Florida, 2006) and ' 'Beautiful Deceptions: European Aesthetics, the Early ' 'American Novel, and Illusionist Art (University of ' 'Virginia Press, 2016).', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: How does close reading work?>, 'talesstep': <TalesStep: How does close reading work?>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c8f75ed10>}
- cachalot/panel.html
- /usr/local/lib/python3.11/site-packages/cachalot/templates/cachalot/panel.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'invalidations_per_db': dict_items([('default', [('django_q', 'Failure', datetime.datetime(2025, 4, 5, 1, 0, 29, 664879)), ('lms_tales', 'CourseMetrics', datetime.datetime(2025, 4, 5, 1, 0, 29, 627596)), ('django_q', 'Schedule', datetime.datetime(2025, 4, 5, 1, 0, 29, 242066)), ('search', 'FulltextSearchModel', datetime.datetime(2025, 4, 5, 0, 0, 29, 805815)), ('reporting', 'Report', datetime.datetime(2025, 4, 4, 9, 5, 11, 893340)), ('lms_roles', 'CourseRole', datetime.datetime(2025, 2, 11, 12, 14, 18, 842206)), ('search', 'TrigramSearchModel', datetime.datetime(2025, 2, 11, 12, 14, 18, 831449)), ('startpage', 'SliderItem', datetime.datetime(2025, 2, 11, 12, 14, 18, 824687)), ('startpage', 'CategoryCourse', datetime.datetime(2025, 2, 11, 12, 14, 18, 824687)), ('tags', 'Category', datetime.datetime(2025, 2, 11, 12, 14, 18, 817718)), ('tags', 'Tag', datetime.datetime(2025, 2, 11, 12, 14, 18, 817718)), ('lms_static_texts', 'StaticText', datetime.datetime(2025, 2, 11, 12, 14, 18, 810671)), ('lms_static_texts', 'HistoricalStaticText', datetime.datetime(2025, 2, 11, 12, 14, 18, 810671)), ('lms_comments', 'Comment', datetime.datetime(2025, 2, 11, 12, 14, 18, 779678)), ('lms_comments', 'Reply', datetime.datetime(2025, 2, 11, 12, 14, 18, 779678)), ('lms_comments', 'Reaction', datetime.datetime(2025, 2, 11, 12, 14, 18, 779678)), ('lms_comments', 'Flag', datetime.datetime(2025, 2, 11, 12, 14, 18, 779678)), ('lms_tales', 'TalesStep', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'TalesStepFileNew', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'TalesStepFile', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'TalesCourseFile', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'TalesChapter', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'TalesCourse', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'TalesAuthor', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'TalesPartner', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'TalesGlossaryItem', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'TalesPath', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'TalesPathStep', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'TalesCourseRun', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'TalesCourseRunStep', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'ScheduledMessage', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'HistoricalTalesStep', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'HistoricalTalesStepFile', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'HistoricalTalesChapter', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'HistoricalTalesCourse', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_tales', 'HistoricalTalesPath', datetime.datetime(2025, 2, 11, 12, 14, 18, 768985)), ('lms_base', 'GlossaryMixin', datetime.datetime(2025, 2, 11, 12, 14, 18, 734014)), ('lms_base', 'GlossaryItemMixin', datetime.datetime(2025, 2, 11, 12, 14, 18, 734014)), ('users', 'User', datetime.datetime(2025, 2, 11, 12, 14, 18, 726994)), ('users', 'UserSettings', datetime.datetime(2025, 2, 11, 12, 14, 18, 726994)), ('auth', 'Permission', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('auth', 'Group', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('contenttypes', 'ContentType', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('sessions', 'Session', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('sites', 'Site', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('flatpages', 'FlatPage', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('admin', 'LogEntry', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('redirects', 'Redirect', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('account', 'EmailAddress', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('account', 'EmailConfirmation', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('socialaccount', 'SocialApp', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('socialaccount', 'SocialAccount', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('socialaccount', 'SocialToken', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('waffle', 'Flag', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('waffle', 'Switch', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('waffle', 'Sample', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('tos', 'TermsOfService', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('tos', 'UserAgreement', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('impersonate', 'ImpersonationLog', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('django_q', 'OrmQ', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815)), ('notifications', 'Notification', datetime.datetime(2025, 2, 11, 12, 14, 18, 718815))])])}
- step/step_home.html
- /app/project/lms_tales/templates/step/step_home.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'en', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'mnQFcyfVhFUev4Co1xNdS84pxVjpzsXCurDjO08cpIimXHFa3VszuhOQiI5mJSfL'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/en/exploring-possible-futures-44/firm-perspective-227/price-quantity-relations-the-mathematics-1286'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c8d79e550>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c8d79e550>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': True, 'available_languages': [('en', 'English')], 'course': <TalesCourse: Exploring Possible Futures>, 'course_contact': '', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: Price-quantity relations: the mathematics>, 'talesstep': <TalesStep: Price-quantity relations: the mathematics>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c8f75eed0>}
- base.html
- /app/project/templates/base.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'fr', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'q6PtrbdXVgH93ZKhBEQTx8vIAqCYWpeRyaC73D6e3j5hvCN3D2vf9hf9ldoV6Pw0'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/fr/literature-in-the-digital-age-11/how-we-read-today-31/what-professional-reading-strategies-are-there-152'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c948ec610>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c948ec610>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': False, 'available_languages': [('en', 'English')], 'course': <TalesCourse: Literature in the Digital Age>, 'course_contact': 'Prof. Dr. Philipp Schweighauser \r\n' 'Departement Sprach- und Literaturwissenschaften \r\n' 'Nadelberg 4 \r\n' '4051 Basel\r\n' '\r\n' 'Phone: [+41 (0)61 207 27 84](tel:+41612072784) \r\n' 'Email: ' '[ph.schweighauser@unibas.ch](mailto:ph.schweighauser@unibas.ch)\r\n' '\r\n' 'Philipp Schweighauser is Associate Professor and Head of ' 'American and General Literatures at the University of ' 'Basel. He is the author of The Noises of American ' 'Literature, 1890 - 1985: Toward a History of Literary ' 'Acoustics (University Press of Florida, 2006) and ' 'Beautiful Deceptions: European Aesthetics, the Early ' 'American Novel, and Illusionist Art (University of ' 'Virginia Press, 2016).', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: What professional reading strategies are there?>, 'talesstep': <TalesStep: What professional reading strategies are there?>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c8fb66150>}
- lms_tales_base.html
- /app/project/templates/lms_tales_base.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'en', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'mnQFcyfVhFUev4Co1xNdS84pxVjpzsXCurDjO08cpIimXHFa3VszuhOQiI5mJSfL'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/en/exploring-possible-futures-44/firm-perspective-227/price-quantity-relations-the-mathematics-1286'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c8d79e550>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c8d79e550>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': True, 'available_languages': [('en', 'English')], 'course': <TalesCourse: Exploring Possible Futures>, 'course_contact': '', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: Price-quantity relations: the mathematics>, 'talesstep': <TalesStep: Price-quantity relations: the mathematics>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c8f75eed0>}
- base.html
- /app/project/templates/base.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'en', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'OOMY7ypXwGVieCpwoMg3zX89urPkH7G2WSzCJ0ieEJjqGfsiqaVpb6SAfeBhRxYb'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/en/literature-in-the-digital-age-11/close-reading-32/how-does-close-reading-work-157'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c8d7ff1d0>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c8d7ff1d0>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': True, 'available_languages': [('en', 'English')], 'course': <TalesCourse: Literature in the Digital Age>, 'course_contact': 'Prof. Dr. Philipp Schweighauser \r\n' 'Departement Sprach- und Literaturwissenschaften \r\n' 'Nadelberg 4 \r\n' '4051 Basel\r\n' '\r\n' 'Phone: [+41 (0)61 207 27 84](tel:+41612072784) \r\n' 'Email: ' '[ph.schweighauser@unibas.ch](mailto:ph.schweighauser@unibas.ch)\r\n' '\r\n' 'Philipp Schweighauser is Associate Professor and Head of ' 'American and General Literatures at the University of ' 'Basel. He is the author of The Noises of American ' 'Literature, 1890 - 1985: Toward a History of Literary ' 'Acoustics (University Press of Florida, 2006) and ' 'Beautiful Deceptions: European Aesthetics, the Early ' 'American Novel, and Illusionist Art (University of ' 'Virginia Press, 2016).', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: How does close reading work?>, 'talesstep': <TalesStep: How does close reading work?>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c8f75ed10>}
- base.html
- /app/project/templates/base.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'en', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'mnQFcyfVhFUev4Co1xNdS84pxVjpzsXCurDjO08cpIimXHFa3VszuhOQiI5mJSfL'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/en/exploring-possible-futures-44/firm-perspective-227/price-quantity-relations-the-mathematics-1286'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c8d79e550>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c8d79e550>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': True, 'available_languages': [('en', 'English')], 'course': <TalesCourse: Exploring Possible Futures>, 'course_contact': '', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: Price-quantity relations: the mathematics>, 'talesstep': <TalesStep: Price-quantity relations: the mathematics>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c8f75eed0>}
- step/step-title.html
- /app/project/lms_tales/templates/step/step-title.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'en', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'mknyK8EdZDNkC9MDeKMAj0sWUbkma2OPuoacmAxu7Gbs4MPpg8rWV9cnFY6jks6Y'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/en/allergies-when-the-immune-system-backfires-41/allergy-the-history-of-a-misunderstanding-218/allergy-mirroring-infection-1196'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c941dff10>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c941dff10>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': True, 'available_languages': [('en', 'English')], 'course': <TalesCourse: Allergies: When the Immune System Backfires>, 'course_contact': '', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: Allergy mirroring infection>, 'talesstep': <TalesStep: Allergy mirroring infection>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c8de71190>} {'block': <Block Node: breadcrumb-bar. Contents: [<TextNode: '\n <div id="tit'>, <Block Node: sidebar-arrow. Contents: [<TextNode: '\n <div'>, <django.template.library.SimpleNode object at 0x706c8f846210>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x706c8fa5da90>, <TextNode: '</span>\n '>]>, <TextNode: '\n <div cla'>, <Block Node: breadcrumb. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>]>} {'block': <Block Node: breadcrumb. Contents: [<TextNode: '\n '>, <IncludeNode: template=<FilterExpression '"step/step-title.html"'>>, <TextNode: '\n'>]>}
- components/header.html
- /app/project/templates/components/header.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'fr', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'IVLcENfMY4wIItPZXyHzU1j4o9w0b5oaQZyQgf8367UQa6SLZWmVwa3v9WiXlvGj'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/fr/literature-in-the-digital-age-11/close-reading-32/how-can-we-close-read-a-poem-part-ii-163'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c8fb99290>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c8fb99290>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': False, 'available_languages': [('en', 'English')], 'course': <TalesCourse: Literature in the Digital Age>, 'course_contact': 'Prof. Dr. Philipp Schweighauser \r\n' 'Departement Sprach- und Literaturwissenschaften \r\n' 'Nadelberg 4 \r\n' '4051 Basel\r\n' '\r\n' 'Phone: [+41 (0)61 207 27 84](tel:+41612072784) \r\n' 'Email: ' '[ph.schweighauser@unibas.ch](mailto:ph.schweighauser@unibas.ch)\r\n' '\r\n' 'Philipp Schweighauser is Associate Professor and Head of ' 'American and General Literatures at the University of ' 'Basel. He is the author of The Noises of American ' 'Literature, 1890 - 1985: Toward a History of Literary ' 'Acoustics (University Press of Florida, 2006) and ' 'Beautiful Deceptions: European Aesthetics, the Early ' 'American Novel, and Illusionist Art (University of ' 'Virginia Press, 2016).', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: How can we close-read a poem? Part II>, 'talesstep': <TalesStep: How can we close-read a poem? Part II>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c8d79fe10>} {'block': <Block Node: header. Contents: [<TextNode: '\n '>, <IncludeNode: template=<FilterExpression '"components/header.html"'>>, <TextNode: '\n '>]>}
- components/sidebar-navigation.html
- /app/project/templates/components/sidebar-navigation.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'fr', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'IVLcENfMY4wIItPZXyHzU1j4o9w0b5oaQZyQgf8367UQa6SLZWmVwa3v9WiXlvGj'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/fr/literature-in-the-digital-age-11/close-reading-32/how-can-we-close-read-a-poem-part-ii-163'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c8fb99290>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c8fb99290>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': False, 'available_languages': [('en', 'English')], 'course': <TalesCourse: Literature in the Digital Age>, 'course_contact': 'Prof. Dr. Philipp Schweighauser \r\n' 'Departement Sprach- und Literaturwissenschaften \r\n' 'Nadelberg 4 \r\n' '4051 Basel\r\n' '\r\n' 'Phone: [+41 (0)61 207 27 84](tel:+41612072784) \r\n' 'Email: ' '[ph.schweighauser@unibas.ch](mailto:ph.schweighauser@unibas.ch)\r\n' '\r\n' 'Philipp Schweighauser is Associate Professor and Head of ' 'American and General Literatures at the University of ' 'Basel. He is the author of The Noises of American ' 'Literature, 1890 - 1985: Toward a History of Literary ' 'Acoustics (University Press of Florida, 2006) and ' 'Beautiful Deceptions: European Aesthetics, the Early ' 'American Novel, and Illusionist Art (University of ' 'Virginia Press, 2016).', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: How can we close-read a poem? Part II>, 'talesstep': <TalesStep: How can we close-read a poem? Part II>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c8d79fe10>} {'block': <Block Node: sidebar-nav. Contents: [<TextNode: '\n <nav id="sid'>, <django.template.library.SimpleNode object at 0x706c94886dd0>, <TextNode: '>\n '>, <django.templatetags.i18n.TranslateNode object at 0x706c9471d810>, <TextNode: '</span>\n '>, <IfNode>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x706c8f846d10>, <TextNode: '>\n '>, <django.templatetags.i18n.TranslateNode object at 0x706c9597d150>, <TextNode: '</span>\n '>, <Block Node: navigation. Contents: [<TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>} {'block': <Block Node: navigation. Contents: [<TextNode: '\n '>, <IncludeNode: template=<FilterExpression '"components/sidebar-navigation.html"'>>, <TextNode: '\n'>]>}
- components/header.html
- /app/project/templates/components/header.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'fr', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'q6PtrbdXVgH93ZKhBEQTx8vIAqCYWpeRyaC73D6e3j5hvCN3D2vf9hf9ldoV6Pw0'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/fr/literature-in-the-digital-age-11/how-we-read-today-31/what-professional-reading-strategies-are-there-152'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c948ec610>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c948ec610>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': False, 'available_languages': [('en', 'English')], 'course': <TalesCourse: Literature in the Digital Age>, 'course_contact': 'Prof. Dr. Philipp Schweighauser \r\n' 'Departement Sprach- und Literaturwissenschaften \r\n' 'Nadelberg 4 \r\n' '4051 Basel\r\n' '\r\n' 'Phone: [+41 (0)61 207 27 84](tel:+41612072784) \r\n' 'Email: ' '[ph.schweighauser@unibas.ch](mailto:ph.schweighauser@unibas.ch)\r\n' '\r\n' 'Philipp Schweighauser is Associate Professor and Head of ' 'American and General Literatures at the University of ' 'Basel. He is the author of The Noises of American ' 'Literature, 1890 - 1985: Toward a History of Literary ' 'Acoustics (University Press of Florida, 2006) and ' 'Beautiful Deceptions: European Aesthetics, the Early ' 'American Novel, and Illusionist Art (University of ' 'Virginia Press, 2016).', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: What professional reading strategies are there?>, 'talesstep': <TalesStep: What professional reading strategies are there?>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c8fb66150>} {'block': <Block Node: header. Contents: [<TextNode: '\n '>, <IncludeNode: template=<FilterExpression '"components/header.html"'>>, <TextNode: '\n '>]>}
- components/sidebar-navigation.html
- /app/project/templates/components/sidebar-navigation.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'fr', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'q6PtrbdXVgH93ZKhBEQTx8vIAqCYWpeRyaC73D6e3j5hvCN3D2vf9hf9ldoV6Pw0'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/fr/literature-in-the-digital-age-11/how-we-read-today-31/what-professional-reading-strategies-are-there-152'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c948ec610>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c948ec610>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': False, 'available_languages': [('en', 'English')], 'course': <TalesCourse: Literature in the Digital Age>, 'course_contact': 'Prof. Dr. Philipp Schweighauser \r\n' 'Departement Sprach- und Literaturwissenschaften \r\n' 'Nadelberg 4 \r\n' '4051 Basel\r\n' '\r\n' 'Phone: [+41 (0)61 207 27 84](tel:+41612072784) \r\n' 'Email: ' '[ph.schweighauser@unibas.ch](mailto:ph.schweighauser@unibas.ch)\r\n' '\r\n' 'Philipp Schweighauser is Associate Professor and Head of ' 'American and General Literatures at the University of ' 'Basel. He is the author of The Noises of American ' 'Literature, 1890 - 1985: Toward a History of Literary ' 'Acoustics (University Press of Florida, 2006) and ' 'Beautiful Deceptions: European Aesthetics, the Early ' 'American Novel, and Illusionist Art (University of ' 'Virginia Press, 2016).', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: What professional reading strategies are there?>, 'talesstep': <TalesStep: What professional reading strategies are there?>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c8fb66150>} {'block': <Block Node: sidebar-nav. Contents: [<TextNode: '\n <nav id="sid'>, <django.template.library.SimpleNode object at 0x706c95acbe10>, <TextNode: '>\n '>, <django.templatetags.i18n.TranslateNode object at 0x706c95ed3090>, <TextNode: '</span>\n '>, <IfNode>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x706c95fa0d90>, <TextNode: '>\n '>, <django.templatetags.i18n.TranslateNode object at 0x706c95fa3b50>, <TextNode: '</span>\n '>, <Block Node: navigation. Contents: [<TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>} {'block': <Block Node: navigation. Contents: [<TextNode: '\n '>, <IncludeNode: template=<FilterExpression '"components/sidebar-navigation.html"'>>, <TextNode: '\n'>]>}
- components/header.html
- /app/project/templates/components/header.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'en', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'mnQFcyfVhFUev4Co1xNdS84pxVjpzsXCurDjO08cpIimXHFa3VszuhOQiI5mJSfL'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/en/exploring-possible-futures-44/firm-perspective-227/price-quantity-relations-the-mathematics-1286'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c8d79e550>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c8d79e550>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': True, 'available_languages': [('en', 'English')], 'course': <TalesCourse: Exploring Possible Futures>, 'course_contact': '', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: Price-quantity relations: the mathematics>, 'talesstep': <TalesStep: Price-quantity relations: the mathematics>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c8f75eed0>} {'block': <Block Node: header. Contents: [<TextNode: '\n '>, <IncludeNode: template=<FilterExpression '"components/header.html"'>>, <TextNode: '\n '>]>}
- components/header.html
- /app/project/templates/components/header.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'en', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'OOMY7ypXwGVieCpwoMg3zX89urPkH7G2WSzCJ0ieEJjqGfsiqaVpb6SAfeBhRxYb'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/en/literature-in-the-digital-age-11/close-reading-32/how-does-close-reading-work-157'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c8d7ff1d0>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c8d7ff1d0>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': True, 'available_languages': [('en', 'English')], 'course': <TalesCourse: Literature in the Digital Age>, 'course_contact': 'Prof. Dr. Philipp Schweighauser \r\n' 'Departement Sprach- und Literaturwissenschaften \r\n' 'Nadelberg 4 \r\n' '4051 Basel\r\n' '\r\n' 'Phone: [+41 (0)61 207 27 84](tel:+41612072784) \r\n' 'Email: ' '[ph.schweighauser@unibas.ch](mailto:ph.schweighauser@unibas.ch)\r\n' '\r\n' 'Philipp Schweighauser is Associate Professor and Head of ' 'American and General Literatures at the University of ' 'Basel. He is the author of The Noises of American ' 'Literature, 1890 - 1985: Toward a History of Literary ' 'Acoustics (University Press of Florida, 2006) and ' 'Beautiful Deceptions: European Aesthetics, the Early ' 'American Novel, and Illusionist Art (University of ' 'Virginia Press, 2016).', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: How does close reading work?>, 'talesstep': <TalesStep: How does close reading work?>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c8f75ed10>} {'block': <Block Node: header. Contents: [<TextNode: '\n '>, <IncludeNode: template=<FilterExpression '"components/header.html"'>>, <TextNode: '\n '>]>}
- components/sidebar-navigation.html
- /app/project/templates/components/sidebar-navigation.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'en', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'mnQFcyfVhFUev4Co1xNdS84pxVjpzsXCurDjO08cpIimXHFa3VszuhOQiI5mJSfL'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/en/exploring-possible-futures-44/firm-perspective-227/price-quantity-relations-the-mathematics-1286'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c8d79e550>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c8d79e550>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': True, 'available_languages': [('en', 'English')], 'course': <TalesCourse: Exploring Possible Futures>, 'course_contact': '', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: Price-quantity relations: the mathematics>, 'talesstep': <TalesStep: Price-quantity relations: the mathematics>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c8f75eed0>} {'block': <Block Node: sidebar-nav. Contents: [<TextNode: '\n <nav id="sid'>, <django.template.library.SimpleNode object at 0x706c8f736cd0>, <TextNode: '>\n '>, <django.templatetags.i18n.TranslateNode object at 0x706c8f736c50>, <TextNode: '</span>\n '>, <IfNode>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x706c94bae210>, <TextNode: '>\n '>, <django.templatetags.i18n.TranslateNode object at 0x706c8f737390>, <TextNode: '</span>\n '>, <Block Node: navigation. Contents: [<TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>} {'block': <Block Node: navigation. Contents: [<TextNode: '\n '>, <IncludeNode: template=<FilterExpression '"components/sidebar-navigation.html"'>>, <TextNode: '\n'>]>}
- components/sidebar-navigation.html
- /app/project/templates/components/sidebar-navigation.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'en', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'OOMY7ypXwGVieCpwoMg3zX89urPkH7G2WSzCJ0ieEJjqGfsiqaVpb6SAfeBhRxYb'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/en/literature-in-the-digital-age-11/close-reading-32/how-does-close-reading-work-157'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c8d7ff1d0>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c8d7ff1d0>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': True, 'available_languages': [('en', 'English')], 'course': <TalesCourse: Literature in the Digital Age>, 'course_contact': 'Prof. Dr. Philipp Schweighauser \r\n' 'Departement Sprach- und Literaturwissenschaften \r\n' 'Nadelberg 4 \r\n' '4051 Basel\r\n' '\r\n' 'Phone: [+41 (0)61 207 27 84](tel:+41612072784) \r\n' 'Email: ' '[ph.schweighauser@unibas.ch](mailto:ph.schweighauser@unibas.ch)\r\n' '\r\n' 'Philipp Schweighauser is Associate Professor and Head of ' 'American and General Literatures at the University of ' 'Basel. He is the author of The Noises of American ' 'Literature, 1890 - 1985: Toward a History of Literary ' 'Acoustics (University Press of Florida, 2006) and ' 'Beautiful Deceptions: European Aesthetics, the Early ' 'American Novel, and Illusionist Art (University of ' 'Virginia Press, 2016).', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: How does close reading work?>, 'talesstep': <TalesStep: How does close reading work?>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c8f75ed10>} {'block': <Block Node: sidebar-nav. Contents: [<TextNode: '\n <nav id="sid'>, <django.template.library.SimpleNode object at 0x706c8d546c90>, <TextNode: '>\n '>, <django.templatetags.i18n.TranslateNode object at 0x706c94146050>, <TextNode: '</span>\n '>, <IfNode>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x706c94297590>, <TextNode: '>\n '>, <django.templatetags.i18n.TranslateNode object at 0x706c95b8d790>, <TextNode: '</span>\n '>, <Block Node: navigation. Contents: [<TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>} {'block': <Block Node: navigation. Contents: [<TextNode: '\n '>, <IncludeNode: template=<FilterExpression '"components/sidebar-navigation.html"'>>, <TextNode: '\n'>]>}
- step/step-title.html
- /app/project/lms_tales/templates/step/step-title.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'fr', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'IVLcENfMY4wIItPZXyHzU1j4o9w0b5oaQZyQgf8367UQa6SLZWmVwa3v9WiXlvGj'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/fr/literature-in-the-digital-age-11/close-reading-32/how-can-we-close-read-a-poem-part-ii-163'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c8fb99290>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c8fb99290>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': False, 'available_languages': [('en', 'English')], 'course': <TalesCourse: Literature in the Digital Age>, 'course_contact': 'Prof. Dr. Philipp Schweighauser \r\n' 'Departement Sprach- und Literaturwissenschaften \r\n' 'Nadelberg 4 \r\n' '4051 Basel\r\n' '\r\n' 'Phone: [+41 (0)61 207 27 84](tel:+41612072784) \r\n' 'Email: ' '[ph.schweighauser@unibas.ch](mailto:ph.schweighauser@unibas.ch)\r\n' '\r\n' 'Philipp Schweighauser is Associate Professor and Head of ' 'American and General Literatures at the University of ' 'Basel. He is the author of The Noises of American ' 'Literature, 1890 - 1985: Toward a History of Literary ' 'Acoustics (University Press of Florida, 2006) and ' 'Beautiful Deceptions: European Aesthetics, the Early ' 'American Novel, and Illusionist Art (University of ' 'Virginia Press, 2016).', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: How can we close-read a poem? Part II>, 'talesstep': <TalesStep: How can we close-read a poem? Part II>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c8d79fe10>} {'block': <Block Node: breadcrumb-bar. Contents: [<TextNode: '\n <div id="tit'>, <Block Node: sidebar-arrow. Contents: [<TextNode: '\n <div'>, <django.template.library.SimpleNode object at 0x706c8d51e150>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x706c9597f510>, <TextNode: '</span>\n '>]>, <TextNode: '\n <div cla'>, <Block Node: breadcrumb. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>]>} {'block': <Block Node: breadcrumb. Contents: [<TextNode: '\n '>, <IncludeNode: template=<FilterExpression '"step/step-title.html"'>>, <TextNode: '\n'>]>}
- step/step-title.html
- /app/project/lms_tales/templates/step/step-title.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'en', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'OOMY7ypXwGVieCpwoMg3zX89urPkH7G2WSzCJ0ieEJjqGfsiqaVpb6SAfeBhRxYb'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/en/literature-in-the-digital-age-11/close-reading-32/how-does-close-reading-work-157'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c8d7ff1d0>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c8d7ff1d0>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': True, 'available_languages': [('en', 'English')], 'course': <TalesCourse: Literature in the Digital Age>, 'course_contact': 'Prof. Dr. Philipp Schweighauser \r\n' 'Departement Sprach- und Literaturwissenschaften \r\n' 'Nadelberg 4 \r\n' '4051 Basel\r\n' '\r\n' 'Phone: [+41 (0)61 207 27 84](tel:+41612072784) \r\n' 'Email: ' '[ph.schweighauser@unibas.ch](mailto:ph.schweighauser@unibas.ch)\r\n' '\r\n' 'Philipp Schweighauser is Associate Professor and Head of ' 'American and General Literatures at the University of ' 'Basel. He is the author of The Noises of American ' 'Literature, 1890 - 1985: Toward a History of Literary ' 'Acoustics (University Press of Florida, 2006) and ' 'Beautiful Deceptions: European Aesthetics, the Early ' 'American Novel, and Illusionist Art (University of ' 'Virginia Press, 2016).', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: How does close reading work?>, 'talesstep': <TalesStep: How does close reading work?>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c8f75ed10>} {'block': <Block Node: breadcrumb-bar. Contents: [<TextNode: '\n <div id="tit'>, <Block Node: sidebar-arrow. Contents: [<TextNode: '\n <div'>, <django.template.library.SimpleNode object at 0x706c95d5f3d0>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x706c947b6110>, <TextNode: '</span>\n '>]>, <TextNode: '\n <div cla'>, <Block Node: breadcrumb. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>]>} {'block': <Block Node: breadcrumb. Contents: [<TextNode: '\n '>, <IncludeNode: template=<FilterExpression '"step/step-title.html"'>>, <TextNode: '\n'>]>}
- step/step_home.html
- /app/project/lms_tales/templates/step/step_home.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'fr', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'OQCse7ibxlFJKLwCmf0cjWWHFmZTj6LfWUp6QzbsFo3RcozooDFyV5G8q9LQtw3o'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/fr/allergies-when-the-immune-system-backfires-41/allergy-the-history-of-a-misunderstanding-218/reflect-on-the-case-study-1210'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c95c71ed0>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c95c71ed0>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': False, 'available_languages': [('en', 'English')], 'course': <TalesCourse: Allergies: When the Immune System Backfires>, 'course_contact': '', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: Reflect on the case study>, 'talesstep': <TalesStep: Reflect on the case study>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c8db851d0>}
- lms_tales_base.html
- /app/project/templates/lms_tales_base.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'fr', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'OQCse7ibxlFJKLwCmf0cjWWHFmZTj6LfWUp6QzbsFo3RcozooDFyV5G8q9LQtw3o'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/fr/allergies-when-the-immune-system-backfires-41/allergy-the-history-of-a-misunderstanding-218/reflect-on-the-case-study-1210'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c95c71ed0>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c95c71ed0>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': False, 'available_languages': [('en', 'English')], 'course': <TalesCourse: Allergies: When the Immune System Backfires>, 'course_contact': '', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: Reflect on the case study>, 'talesstep': <TalesStep: Reflect on the case study>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c8db851d0>}
- base.html
- /app/project/templates/base.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'fr', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'OQCse7ibxlFJKLwCmf0cjWWHFmZTj6LfWUp6QzbsFo3RcozooDFyV5G8q9LQtw3o'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/fr/allergies-when-the-immune-system-backfires-41/allergy-the-history-of-a-misunderstanding-218/reflect-on-the-case-study-1210'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c95c71ed0>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c95c71ed0>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': False, 'available_languages': [('en', 'English')], 'course': <TalesCourse: Allergies: When the Immune System Backfires>, 'course_contact': '', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: Reflect on the case study>, 'talesstep': <TalesStep: Reflect on the case study>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c8db851d0>}
- step/step-title.html
- /app/project/lms_tales/templates/step/step-title.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'fr', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'q6PtrbdXVgH93ZKhBEQTx8vIAqCYWpeRyaC73D6e3j5hvCN3D2vf9hf9ldoV6Pw0'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/fr/literature-in-the-digital-age-11/how-we-read-today-31/what-professional-reading-strategies-are-there-152'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c948ec610>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c948ec610>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': False, 'available_languages': [('en', 'English')], 'course': <TalesCourse: Literature in the Digital Age>, 'course_contact': 'Prof. Dr. Philipp Schweighauser \r\n' 'Departement Sprach- und Literaturwissenschaften \r\n' 'Nadelberg 4 \r\n' '4051 Basel\r\n' '\r\n' 'Phone: [+41 (0)61 207 27 84](tel:+41612072784) \r\n' 'Email: ' '[ph.schweighauser@unibas.ch](mailto:ph.schweighauser@unibas.ch)\r\n' '\r\n' 'Philipp Schweighauser is Associate Professor and Head of ' 'American and General Literatures at the University of ' 'Basel. He is the author of The Noises of American ' 'Literature, 1890 - 1985: Toward a History of Literary ' 'Acoustics (University Press of Florida, 2006) and ' 'Beautiful Deceptions: European Aesthetics, the Early ' 'American Novel, and Illusionist Art (University of ' 'Virginia Press, 2016).', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: What professional reading strategies are there?>, 'talesstep': <TalesStep: What professional reading strategies are there?>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c8fb66150>} {'block': <Block Node: breadcrumb-bar. Contents: [<TextNode: '\n <div id="tit'>, <Block Node: sidebar-arrow. Contents: [<TextNode: '\n <div'>, <django.template.library.SimpleNode object at 0x706c95fa10d0>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x706c95fa2550>, <TextNode: '</span>\n '>]>, <TextNode: '\n <div cla'>, <Block Node: breadcrumb. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>]>} {'block': <Block Node: breadcrumb. Contents: [<TextNode: '\n '>, <IncludeNode: template=<FilterExpression '"step/step-title.html"'>>, <TextNode: '\n'>]>}
- step/step-title.html
- /app/project/lms_tales/templates/step/step-title.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'en', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'mnQFcyfVhFUev4Co1xNdS84pxVjpzsXCurDjO08cpIimXHFa3VszuhOQiI5mJSfL'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/en/exploring-possible-futures-44/firm-perspective-227/price-quantity-relations-the-mathematics-1286'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c8d79e550>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c8d79e550>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': True, 'available_languages': [('en', 'English')], 'course': <TalesCourse: Exploring Possible Futures>, 'course_contact': '', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: Price-quantity relations: the mathematics>, 'talesstep': <TalesStep: Price-quantity relations: the mathematics>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c8f75eed0>} {'block': <Block Node: breadcrumb-bar. Contents: [<TextNode: '\n <div id="tit'>, <Block Node: sidebar-arrow. Contents: [<TextNode: '\n <div'>, <django.template.library.SimpleNode object at 0x706c95bd3cd0>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x706c95fa2590>, <TextNode: '</span>\n '>]>, <TextNode: '\n <div cla'>, <Block Node: breadcrumb. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>]>} {'block': <Block Node: breadcrumb. Contents: [<TextNode: '\n '>, <IncludeNode: template=<FilterExpression '"step/step-title.html"'>>, <TextNode: '\n'>]>}
- components/header.html
- /app/project/templates/components/header.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'fr', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'OQCse7ibxlFJKLwCmf0cjWWHFmZTj6LfWUp6QzbsFo3RcozooDFyV5G8q9LQtw3o'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/fr/allergies-when-the-immune-system-backfires-41/allergy-the-history-of-a-misunderstanding-218/reflect-on-the-case-study-1210'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c95c71ed0>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c95c71ed0>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': False, 'available_languages': [('en', 'English')], 'course': <TalesCourse: Allergies: When the Immune System Backfires>, 'course_contact': '', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: Reflect on the case study>, 'talesstep': <TalesStep: Reflect on the case study>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c8db851d0>} {'block': <Block Node: header. Contents: [<TextNode: '\n '>, <IncludeNode: template=<FilterExpression '"components/header.html"'>>, <TextNode: '\n '>]>}
- components/sidebar-navigation.html
- /app/project/templates/components/sidebar-navigation.html
-
Toggle context
{'False': False, 'None': None, 'True': True} {'CI_COMMIT_SHORT_SHA': '0809bd77', 'CI_COMMIT_TAG': '', 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'DEPLOY_ENV': 'staging', 'LANGUAGES': '<<languages>>', 'LANGUAGE_BIDI': False, 'LANGUAGE_CODE': 'fr', 'MEDIA_URL': '/media/', 'RELEASE_NAME': '', 'STATIC_URL': '/static/', 'TIME_ZONE': 'Europe/Zurich', 'csrf_token': '<SimpleLazyObject: ' "'OQCse7ibxlFJKLwCmf0cjWWHFmZTj6LfWUp6QzbsFo3RcozooDFyV5G8q9LQtw3o'>", 'messages': <FallbackStorage: request=<ASGIRequest: GET '/fr/allergies-when-the-immune-system-backfires-41/allergy-the-history-of-a-misunderstanding-218/reflect-on-the-case-study-1210'>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c95c71ed0>>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <SimpleLazyObject: ' '<django.contrib.auth.models.AnonymousUser object at ' '0x706c95c71ed0>>>'} {'active_courseruns': [], 'active_courserunsteps': [], 'active_language_available': False, 'available_languages': [('en', 'English')], 'course': <TalesCourse: Allergies: When the Immune System Backfires>, 'course_contact': '', 'files': '<<queryset of lms_tales.TalesStepFileNew>>', 'is_editor': False, 'object': <TalesStep: Reflect on the case study>, 'talesstep': <TalesStep: Reflect on the case study>, 'view': <lms_tales.views.step_views.StepDetails object at 0x706c8db851d0>} {'block': <Block Node: sidebar-nav. Contents: [<TextNode: '\n <nav id="sid'>, <django.template.library.SimpleNode object at 0x706c95c8bed0>, <TextNode: '>\n '>, <django.templatetags.i18n.TranslateNode object at 0x706c95c88790>, <TextNode: '</span>\n '>, <IfNode>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x706c95c8a210>, <TextNode: '>\n '>, <django.templatetags.i18n.TranslateNode object at 0x706c95c88f90>, <TextNode: '</span>\n '>, <Block Node: navigation. Contents: [<TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>} {'block': <Block Node: navigation. Contents: [<TextNode: '\n '>, <IncludeNode: template=<FilterExpression '"components/sidebar-navigation.html"'>>, <TextNode: '\n'>]>}
Context processors
- django.template.context_processors.csrf
-
Toggle context
{'csrf_token': <SimpleLazyObject: 'pZYYkGMDMrzItk0JzKjU8YBFtH6hYoWZx3LCW8FUUuXQVX3vB8YgK7l6euSe8Oe8'>}
- django.template.context_processors.debug
-
Toggle context
{}
- django.template.context_processors.request
-
Toggle context
{'request': <ASGIRequest: GET '/fr/from-ink-to-sound-32/coordination-in-rhythm-modal-notation-189/extensio-in-fraction-modi-962'>}
- django.contrib.auth.context_processors.auth
-
Toggle context
{'user': <SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c95aa12d0>>>, 'perms': PermWrapper(<SimpleLazyObject: <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x706c95aa12d0>>>)}
- django.template.context_processors.i18n
-
Toggle context
{'LANGUAGES': (('de', 'German'), ('en', 'English'), ('fr', 'French')), 'LANGUAGE_CODE': 'fr', 'LANGUAGE_BIDI': False}
- django.template.context_processors.media
-
Toggle context
{'MEDIA_URL': '/media/'}
- django.template.context_processors.static
-
Toggle context
{'STATIC_URL': '/static/'}
- django.template.context_processors.tz
-
Toggle context
{'TIME_ZONE': 'Europe/Zurich'}
- django.contrib.messages.context_processors.messages
-
Toggle context
{'messages': <FallbackStorage: request=<ASGIRequest: GET '/fr/from-ink-to-sound-32/coordination-in-rhythm-modal-notation-189/extensio-in-fraction-modi-962'>>, 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30, 'ERROR': 40}}
- utils.context_processors.ci_info
-
Toggle context
{'CI_COMMIT_TAG': '', 'CI_COMMIT_SHORT_SHA': '0809bd77', 'RELEASE_NAME': '', 'DEPLOY_ENV': 'staging'}
Cache calls from 1 backend
Summary
Total calls | Total time | Cache hits | Cache misses |
---|---|---|---|
3 | 55.52664399147034 ms | 67 | 0 |
Commands
add | get | set | get_or_set | touch | delete | clear | get_many | set_many | delete_many | has_key | incr | decr | incr_version | decr_version |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Calls
Time (ms) | Type | Arguments | Keyword arguments | Backend | |
---|---|---|---|---|---|
40.7683 | get_many | (dict_keys(['b5ac959681ff06eff632d25a5961a4d3cad09b42', '542c27005f4e84288827ce70a7d49bc73324a5e7', '887f8247d0ff979264c73b069f790024b2aa98e1', 'a2cec6efb2cb51d9fcdc73ec65d0d02848d3205f', 'af167bf678e72a9b2a64d8869d420b8d25e96148', 'f2b266a5acd7f191551fca80dea8475d456a300c', 'e5890f0f95e54c95fc7d85ffd3cd8f5079a384eb', '7d22fa9ec7aaf50b239b17bb4529f27be72f4b3d', 'fab86eaeb6f68c1bd14e3c42d6a32fc63fe5c10b', '1671d58e08fb6227d160e4add3baac34f778006f', '5634047d837b3106d3997f0611a298a16f6754cb', '38c0c9db04f183fb89086db2a3a02d20d5c1cbda', '33cd0b10f8c2fd53802b0948820b8b58da6bb27c', 'dbdc4e6f3de4931fbb7e39044291d87c49a581a7', 'bf555e2c224baeeac5838ee69c053900ce037b1d', '452aaa2adbf5d826d715538ebfd87013a599bacd', '5ef73f3d610667d7836abd847979ad8d02582140', '28b4f1c78186b497fc0611b76d5609a36a170804', 'acd1c2a120952e0445e89d8a2cc8faa99cc73454', '3fdb5b63faddfa01f5ebd09a89b74c9b3ec742bf', 'bc41695a90f568da6f9c44d14dbb30130bea76db', '6d6bdc7046f6d1410bd41d09cd570831af97fd31', '2288e6f142e998339c6d4985913358f76533a29e', 'f6e1a4d48790db63f8cb8c5653192a74ca00d34a', 'e19dd8b0e8a705c5914b55bbeb94d01f20e5368e', 'bf2a5aa392ac965fc14b9cc5fc8fcce588b2cf57', '9de26d60cec57eaab1ec19a62cf772073ae0e30f', '138549f5508bbba7283d6a0625e51c589d845e8f', '4f1f0b4dfbd30463b5587753e6f3e6ca21ddbf60', 'd890e5bc0b77c02793036efa76f50a25770a52a7', 'd00779073776b2287204a6fa5336494275fc73d5', '76e323efd8711853e13c9f7cf976845908364eb2', 'e3a5db5a670ad803efb866441f33de58309be2e2', '312c357d2eed306581bb334378808fbccf7019ea', 'd144abeb0db81d5dfea390a27c6d616aa1783141', 'b33158a576dd24b41063563867ce3f9044eb1acf', 'a78875b90f65061214a7b7eaa1a66176310060a1', 'd1accdb7a5e2af4fd7d0fc7e34b048f555cd65a0', '0b7593abe25ebbf222c98d71b199a17877e17478', 'da8bff0e0d25742e869a69b7508c37ccde5f8f33', '0098dff618e4e4ce8b226fb3dcd5d9042e69eb75', '8e3f73e6feaebee5ffbc4479f566917f08b4bbca', '5c50c6b3292213266ec6601a46b9ff857efec10a', '9ba11033f2e0b0478fa7ea0cfcde90c7ea880b1b', '810de96c2cc412e55eb18a19206c9b4f4879ec68', 'da75293c9ac4e9ae833da9fecd1ab668d629ce49', 'e4392949c2513e35c4d436a230e913efc13e4556', '9a3409722cd89bb29bc78c6bd4bca2cc2aad3e96', '5bd1ef7c64b457cbb725c42d97969db3ebe85f66', 'f3d241856fbbba355385868203e06010b65b882e', '1511f7c2f0ac6c43b58dfa27858c3d8561280f80', 'e2a6b84fc2a64f0ca59dd6e95fe6e1a5f3850ad5', 'b72f66480a030f14a954ea7eeb482d64fa1da084', '9e3a2b98ae55fa975425fa81a4e6e13342147b8a', '0e90ed3afbea5b3254d013a2b352642aaa2ce984', '2b2eb1f58e7ba0ac1ae04f9e9c95bde41f64e3fc', 'f38ac9d1db097d95b5062273e0a941d2da616361', 'cf84cec99a10af4507238b31bfce2171063a0c1d', 'c9b253ceb06244b30c24377ae68ae44353b4b3c4', '946a725506b18b4afe14d273540101238984908d', 'd34b8ed7c3bb0d3a712a5e42065744014bfe1542']),) | {} | <django_redis.cache.RedisCache object at 0x706cb63263d0> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(40) self.collect_invalidations() /usr/local/lib/python3.11/site-packages/cachalot/panels.py in collect_invalidations(52) for cache_key, timestamp in cache.get_many( |
|||||
4.3801 | get_many | (['542c27005f4e84288827ce70a7d49bc73324a5e7', '53169bc24a037802f3e42b2df3d6e48b7ae8482f', 'e3a5db5a670ad803efb866441f33de58309be2e2', '70626b48ded21a892fba4ce0212270be9f603721'],) | {} | <django_redis.cache.RedisCache object at 0x706cb63263d0> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(72) cache.set(CACHE_KEY, response.render(), ttl) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_patched_render(41) return old_render(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in render(114) self.content = self.rendered_content /usr/local/lib/python3.11/site-packages/sentry_sdk/utils.py in runner(1788) return sentry_patched_function(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/templates.py in rendered_content(77) return real_rendered_content.fget(self) /usr/local/lib/python3.11/site-packages/django/template/response.py in rendered_content(92) return template.render(context, self._request) /usr/local/lib/python3.11/site-packages/django/template/backends/django.py in render(61) return self.template.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(175) return self._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(157) return compiled_parent._render(context) /usr/local/lib/python3.11/site-packages/django/test/utils.py in instrumented_test_render(112) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/loader_tags.py in render(63) result = block.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/defaulttags.py in render(541) return self.nodelist.render(context) /usr/local/lib/python3.11/site-packages/django/template/base.py in render(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in <listcomp>(1005) return SafeString("".join([node.render_annotated(context) for node in self])) /usr/local/lib/python3.11/site-packages/django/template/base.py in render_annotated(966) return self.render(context) /usr/local/lib/python3.11/site-packages/django/template/library.py in render(237) output = self.func(*resolved_args, **resolved_kwargs) /usr/local/lib/python3.11/site-packages/rules/templatetags/rules.py in has_perm(18) return user.has_perm(perm, obj) /usr/local/lib/python3.11/site-packages/django/contrib/auth/models.py in has_perm(480) return _user_has_perm(self, perm, obj=obj) /usr/local/lib/python3.11/site-packages/django/contrib/auth/models.py in _user_has_perm(220) if backend.has_perm(user, perm, obj): /usr/local/lib/python3.11/site-packages/rules/permissions.py in has_perm(31) return has_perm(perm, user, *args, **kwargs) /usr/local/lib/python3.11/site-packages/rules/permissions.py in has_perm(23) return permissions.test_rule(name, *args, **kwargs) /usr/local/lib/python3.11/site-packages/rules/rulesets.py in test_rule(6) return name in self and self[name].test(*args, **kwargs) /usr/local/lib/python3.11/site-packages/rules/predicates.py in test(172) return bool(self._apply(*args)) /usr/local/lib/python3.11/site-packages/rules/predicates.py in _apply(235) result = self.fn(*callargs) /usr/local/lib/python3.11/site-packages/rules/predicates.py in OR(184) return self._combine(other, operator.or_, args) /usr/local/lib/python3.11/site-packages/rules/predicates.py in _combine(206) self_result = self._apply(*args) /usr/local/lib/python3.11/site-packages/rules/predicates.py in _apply(235) result = self.fn(*callargs) /app/project/lms_tales/rules.py in is_in_group(48) for owner in course.owner.all(): /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
|||||
10.3782 | get_many | (['138549f5508bbba7283d6a0625e51c589d845e8f', 'ca4a7b0782ea4d6b5b0b2fa89b33cefc449983eb'],) | {} | <django_redis.cache.RedisCache object at 0x706cb63263d0> | |
/usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in run(101) return _run_old_run_func() /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py in _run_old_run_func(94) return old_run_func(self, *a, **kw) /usr/local/lib/python3.11/concurrent/futures/thread.py in _worker(83) work_item.run() /usr/local/lib/python3.11/concurrent/futures/thread.py in run(58) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/corsheaders/middleware.py in __call__(56) result = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in middleware(32) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/allauth/account/middleware.py in middleware(36) response = get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/simple_history/middleware.py in middleware(41) return get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43) return self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /app/project/lms_tales/middleware.py in __call__(168) response = self.get_response(request) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/middleware.py in __call__(177) return f(*args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/panels.py in process_request(41) return super(CachalotPanel, self).process_request(request) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in __call__(244) current_executor.run_until_future(call_result) /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run_until_future(81) work_item.run() /usr/local/lib/python3.11/site-packages/asgiref/current_thread_executor.py in run(40) result = self.fn(*self.args, **self.kwargs) /usr/local/lib/python3.11/site-packages/asgiref/sync.py in thread_handler(522) return func(*args, **kwargs) /usr/local/lib/python3.11/site-packages/sentry_sdk/integrations/django/views.py in sentry_wrapped_callback(90) return callback(request, *args, **kwargs) /app/project/utils/decorators.py in apply_cache(64) response = function(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/base.py in view(104) return self.dispatch(request, *args, **kwargs) /app/project/lms_tales/views/mixins.py in dispatch(32) return super().dispatch(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/base.py in dispatch(143) return handler(request, *args, **kwargs) /app/project/lms_tales/views/step_views.py in get(37) response = super().get(request, *args, **kwargs) /usr/local/lib/python3.11/site-packages/django/views/generic/detail.py in get(108) self.object = self.get_object() /usr/local/lib/python3.11/site-packages/django/views/generic/detail.py in get_object(53) obj = queryset.get() /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(37) return original(compiler, *args, **kwargs) /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in inner(96) return _get_result_or_execute_query( /usr/local/lib/python3.11/site-packages/cachalot/monkey_patch.py in _get_result_or_execute_query(46) data = cache.get_many(table_cache_keys + [cache_key]) |
Cachalot
Database 'default'
Application | Model | Last invalidation |
---|---|---|
django_q | Failure | 22 minutes |
lms_tales | CourseMetrics | 22 minutes |
django_q | Schedule | 22 minutes |
search | FulltextSearchModel | 1 hour, 22 minutes |
reporting | Report | 16 hours, 18 minutes |
lms_roles | CourseRole | 1 month, 3 weeks |
search | TrigramSearchModel | 1 month, 3 weeks |
startpage | SliderItem | 1 month, 3 weeks |
startpage | CategoryCourse | 1 month, 3 weeks |
tags | Category | 1 month, 3 weeks |
tags | Tag | 1 month, 3 weeks |
lms_static_texts | StaticText | 1 month, 3 weeks |
lms_static_texts | HistoricalStaticText | 1 month, 3 weeks |
lms_comments | Comment | 1 month, 3 weeks |
lms_comments | Reply | 1 month, 3 weeks |
lms_comments | Reaction | 1 month, 3 weeks |
lms_comments | Flag | 1 month, 3 weeks |
lms_tales | TalesStep | 1 month, 3 weeks |
lms_tales | TalesStepFileNew | 1 month, 3 weeks |
lms_tales | TalesStepFile | 1 month, 3 weeks |
lms_tales | TalesCourseFile | 1 month, 3 weeks |
lms_tales | TalesChapter | 1 month, 3 weeks |
lms_tales | TalesCourse | 1 month, 3 weeks |
lms_tales | TalesAuthor | 1 month, 3 weeks |
lms_tales | TalesPartner | 1 month, 3 weeks |
lms_tales | TalesGlossaryItem | 1 month, 3 weeks |
lms_tales | TalesPath | 1 month, 3 weeks |
lms_tales | TalesPathStep | 1 month, 3 weeks |
lms_tales | TalesCourseRun | 1 month, 3 weeks |
lms_tales | TalesCourseRunStep | 1 month, 3 weeks |
lms_tales | ScheduledMessage | 1 month, 3 weeks |
lms_tales | HistoricalTalesStep | 1 month, 3 weeks |
lms_tales | HistoricalTalesStepFile | 1 month, 3 weeks |
lms_tales | HistoricalTalesChapter | 1 month, 3 weeks |
lms_tales | HistoricalTalesCourse | 1 month, 3 weeks |
lms_tales | HistoricalTalesPath | 1 month, 3 weeks |
lms_base | GlossaryMixin | 1 month, 3 weeks |
lms_base | GlossaryItemMixin | 1 month, 3 weeks |
users | User | 1 month, 3 weeks |
users | UserSettings | 1 month, 3 weeks |
auth | Permission | 1 month, 3 weeks |
auth | Group | 1 month, 3 weeks |
contenttypes | ContentType | 1 month, 3 weeks |
sessions | Session | 1 month, 3 weeks |
sites | Site | 1 month, 3 weeks |
flatpages | FlatPage | 1 month, 3 weeks |
admin | LogEntry | 1 month, 3 weeks |
redirects | Redirect | 1 month, 3 weeks |
account | EmailAddress | 1 month, 3 weeks |
account | EmailConfirmation | 1 month, 3 weeks |
socialaccount | SocialApp | 1 month, 3 weeks |
socialaccount | SocialAccount | 1 month, 3 weeks |
socialaccount | SocialToken | 1 month, 3 weeks |
waffle | Flag | 1 month, 3 weeks |
waffle | Switch | 1 month, 3 weeks |
waffle | Sample | 1 month, 3 weeks |
tos | TermsOfService | 1 month, 3 weeks |
tos | UserAgreement | 1 month, 3 weeks |
impersonate | ImpersonationLog | 1 month, 3 weeks |
django_q | OrmQ | 1 month, 3 weeks |
notifications | Notification | 1 month, 3 weeks |
Signals
Signal | Receivers |
---|---|
class_prepared | StatusField.prepare_class, add_status_query_managers, add_timeframed_query_manager, StatusField.prepare_class, StatusField.prepare_class, StatusField.prepare_class, StatusField.prepare_class, StatusField.prepare_class, StatusField.prepare_class, StatusField.prepare_class, StatusField.prepare_class, StatusField.prepare_class, StatusField.prepare_class |
connection_created | |
got_request_exception | _got_request_exception |
m2m_changed | flag_membership_changed, flag_membership_changed |
post_delete | HistoricalRecords.post_delete, HistoricalRecords.post_delete, HistoricalRecords.post_delete, HistoricalRecords.post_delete, HistoricalRecords.post_delete, HistoricalRecords.post_delete, delete_search_index, delete_search_index |
post_init | ModelSignalRouter.post_init_receiver, MonitorField._save_initial, MonitorField._save_initial, MonitorField._save_initial, MonitorField._save_initial, ImageField.update_dimension_fields, MonitorField._save_initial, ImageField.update_dimension_fields, MonitorField._save_initial, MonitorField._save_initial, ImageField.update_dimension_fields, ImageField.update_dimension_fields, ImageField.update_dimension_fields, MonitorField._save_initial, delete_mt_init, delete_mt_init, delete_mt_init, delete_mt_init, delete_mt_init, delete_mt_init, delete_mt_init, delete_mt_init, delete_mt_init, MonitorField._save_initial, MonitorField._save_initial, MonitorField._save_initial, delete_mt_init, delete_mt_init, delete_mt_init |
post_migrate | create_permissions, create_contenttypes, create_default_site, _invalidate_on_migration |
post_save | ModelSignalRouter.post_save_receiver, HistoricalRecords.post_save, HistoricalRecords.post_save, HistoricalRecords.post_save, HistoricalRecords.post_save, HistoricalRecords.post_save, HistoricalRecords.post_save, call_hook, create_user_settings, save_user_settings, update_search_index, update_search_index |
pre_delete | clear_site_cache |
pre_init | |
pre_migrate | inject_rename_contenttypes_operations |
pre_save | clear_site_cache |
request_finished | close_old_connections, close_caches, reset_urlconf |
request_started | reset_queries, close_old_connections |
setting_changed | reset_cache, reload_settings, clear_cache_handlers, update_installed_apps, update_connections_time_zone, clear_routers_cache, reset_template_engines, storages_changed, clear_serializers_cache, language_changed, localize_settings_changed, file_storage_changed, complex_setting_changed, root_urlconf_changed, static_storage_changed, static_finders_changed, auth_password_validators_changed, user_model_swapped, update_toolbar_config, reset_hashers, update_level_tags, clear_caches, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties, StaticFilesStorage._clear_cached_properties, FileSystemStorage._clear_cached_properties |