feat: extract text preview

This commit is contained in:
Silver Ghost 2022-10-25 11:22:52 +03:00
parent cf32c03039
commit 88143da955
No known key found for this signature in database
7 changed files with 73 additions and 1 deletions

View File

@ -65,6 +65,7 @@ services:
POSTGRES_PASSWORD: later42
POSTGRES_DB: later42
POSTGRES_HOST_AUTH_METHOD: trust
READABILITY_HOST: http://ureadability:8080/
volumes:
- /opt/docker/later42/db:/var/lib/postgresql/data
logging:
@ -72,3 +73,37 @@ services:
options:
max-size: "10m"
max-file: "5"
ureadability:
image: umputun/ukeeper-readability:latest
logging:
driver: json-file
options:
max-size: "10m"
max-file: "5"
hostname: ureadability
restart: always
container_name: ureadability
links:
- mongo
environment:
- MONGO_URI=mongodb://root:aldbhvaygvavASDVSDFVQFQgfwvsav@mongo:27017
- MONGO_DELAY=10s
- CREDS=test:l4!AzQVW1dSN0T^7IJGn&Kr!kwRSF2P1
mongo:
image: mongo:5.0
logging:
driver: json-file
options:
max-size: "10m"
max-file: "5"
hostname: mongo
restart: always
container_name: ureadability-mongo
environment:
- MONGO_INITDB_DATABASE=admin
- MONGO_INITDB_ROOT_USERNAME=root
- MONGO_INITDB_ROOT_PASSWORD=aldbhvaygvavASDVSDFVQFQgfwvsav
volumes:
- /opt/docker/mongodb:/data/db

View File

@ -0,0 +1,18 @@
# Generated by Django 4.1.2 on 2022-10-25 08:05
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('later42', '0002_url_archived'),
]
operations = [
migrations.AddField(
model_name='url',
name='content',
field=models.TextField(blank=True, null=True),
),
]

View File

@ -8,3 +8,4 @@ class URL(models.Model):
url = models.CharField(max_length=2000)
title = models.CharField(max_length=2000)
archived = models.BooleanField(default=False)
content = models.TextField(blank=True, null=True)

View File

@ -159,3 +159,4 @@ REST_FRAMEWORK = {
}
URLS_PER_PAGE = 20
READABILITY_HOST = os.getenv('READABILITY_HOST', None)

View File

@ -16,6 +16,11 @@
<a href="/delete/{{ url.id }}"><span class="fa-solid fa-trash"></span></a>
</div>
</div>
{% if url.content %}
<p class="post-meta">
{{ url.content }}
</p>
{% endif %}
<p class="post-meta">
{{ url.url }}
</p>

View File

@ -13,6 +13,11 @@
<a href="/archive/{{ url.id }}"><span class="fa-solid fa-trash"></span></a>
</div>
</div>
{% if url.content %}
<p class="post-meta">
{{ url.content }}
</p>
{% endif %}
<p class="post-meta">
{{ url.url }}
</p>

View File

@ -4,6 +4,7 @@ from rest_framework.response import Response
from rest_framework.views import APIView
from bs4 import BeautifulSoup
from later42.models.urls import URL as URLModel
from django.conf import settings
class URL(APIView):
@ -22,7 +23,13 @@ class URL(APIView):
title = self.get_title(url)
if title is None:
title = url
url = URLModel(url=url, title=title, user=request.user)
content = None
if settings.READABILITY_HOST:
content = self.get_content(url)
url = URLModel(url=url, user=request.user,
title=title, content=content)
url.save()
return Response({'status': 'success'})
else: