Skip to content

Commit

Permalink
Отправка картинок в Задании (#119)
Browse files Browse the repository at this point in the history
* add question image

* fix media_value adress in docker-compose.test.yml

* add DOMAIN to .env.example

* add DOMAIN to .env.example v2
  • Loading branch information
avpech authored Nov 26, 2023
1 parent ae9f631 commit 4fc6401
Show file tree
Hide file tree
Showing 5 changed files with 19 additions and 11 deletions.
3 changes: 3 additions & 0 deletions .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,9 @@ DEBUG=True
SECRET_KEY=django-secret-key
ALLOWED_HOSTS=127.0.0.1

# Доменное имя
DOMAIN=127.0.0.1

# Если используется другая СУБД, то строку ниже следует закомментировать
NEED_SQLITE=True

Expand Down
2 changes: 1 addition & 1 deletion infra/docker-compose.test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ services:
restart: always
volumes:
- static_value:/app/backend/static/
- media_value:/app/media/
- media_value:/app/backend/media/
- ../.data/logs/:/app/.data/logs/
env_file:
- ../.env
Expand Down
2 changes: 1 addition & 1 deletion infra/docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ services:
restart: always
volumes:
- static_value:/app/backend/static/
- media_value:/app/media/
- media_value:/app/backend/media/
- ../.data/logs/:/app/.data/logs/
env_file:
- ../.env
Expand Down
20 changes: 12 additions & 8 deletions src/backend/api/serializers.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
from urllib.parse import urljoin

from django.conf import settings
from django.contrib.auth import get_user_model
from django.contrib.auth.models import Group
from django.template.loader import render_to_string
Expand Down Expand Up @@ -34,15 +37,16 @@ def _get_result(self, obj: list[Question]):
task_number = self.context["task_number"]
template_name = self._get_template_name_by_task_number(task_number)
for question in obj:
result.append(
{
"content": render_to_string(
template_name,
{"question": question},
self.context["request"],
)
}
content = render_to_string(
template_name,
{"question": question},
self.context["request"],
)
photo = question.photo
if photo and photo.image:
photo_url = urljoin(f"http://{settings.DOMAIN}", photo.image.url)
content = f"<a href='{photo_url}'>&#8205;</a>" + content
result.append({"content": content})
return result

@staticmethod
Expand Down
3 changes: 2 additions & 1 deletion src/backend/backend/settings.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,8 @@
DEBUG = os.getenv("DEBUG", default=False)

ALLOWED_HOSTS = [os.getenv("ALLOWED_HOSTS", default="*")]
CSRF_TRUSTED_ORIGINS = (f"http://{os.getenv('HOST', default='127.0.0.1')}",)
DOMAIN = os.getenv("DOMAIN", default="127.0.0.1")
CSRF_TRUSTED_ORIGINS = (f"http://{DOMAIN}", f"https://{DOMAIN}")

INSTALLED_APPS = [
"django.contrib.admin",
Expand Down

0 comments on commit 4fc6401

Please sign in to comment.