Fixed some backend issues.
Signed-off-by: Pavel Kirilin <s3riussan@gmail.com>
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
from piccolo.apps.migrations.auto.migration_manager import MigrationManager
|
||||
from piccolo.columns.column_types import Integer
|
||||
|
||||
ID = "2026-07-02T12:57:47:552419"
|
||||
VERSION = "1.34.0"
|
||||
DESCRIPTION = ""
|
||||
|
||||
|
||||
async def forwards():
|
||||
manager = MigrationManager(
|
||||
migration_id=ID, app_name="zangramru_db", description=DESCRIPTION
|
||||
)
|
||||
|
||||
manager.alter_column(
|
||||
table_class_name="Puzzle",
|
||||
tablename="puzzle",
|
||||
column_name="number",
|
||||
db_column_name="number",
|
||||
params={"unique": True},
|
||||
old_params={"unique": False},
|
||||
column_class=Integer,
|
||||
old_column_class=Integer,
|
||||
schema=None,
|
||||
)
|
||||
|
||||
return manager
|
||||
@@ -12,4 +12,4 @@ class Puzzle(Table):
|
||||
solutions = JSON()
|
||||
extra = JSON()
|
||||
definitions = JSON()
|
||||
number = Integer()
|
||||
number = Integer(unique=True)
|
||||
|
||||
@@ -19,6 +19,11 @@ word|def
|
||||
слово|прогр. то же, что машинное слово; два байта или шестнадцать бит
|
||||
большой|щитовидный вулкан между реками Тихая и Быстрая Хайрюзова на полуострове Камчатка
|
||||
место|разг. то же, что плацента; детское место
|
||||
фрак|парадный сюртук с вырезанными спереди полами и длинными узкими фалдами сзади
|
||||
тина|крим. жарг. наркотик метамфетамин
|
||||
зонт|перен. защита, средство защиты от определённой угрозы
|
||||
некроз|мед. патологический процесс, выражающийся в местной гибели органов или тканей в живом организме в результате каких-либо повреждений
|
||||
норка|река в России
|
||||
лицо|перен. лицевая (значимая) часть плоского предмета (листа бумаги, текстильного полотна и т. д.)
|
||||
друг|перен., разг. то, что способствует нормальной жизнедеятельности человека
|
||||
глаз|устар. крим. паспорт
|
||||
|
||||
|
Can't render this file because it is too large.
|
@@ -1,4 +1,5 @@
|
||||
import json
|
||||
import asyncio
|
||||
from datetime import date, timedelta
|
||||
|
||||
from fastapi import APIRouter, HTTPException
|
||||
@@ -30,7 +31,7 @@ async def daily_puzzle(
|
||||
# Because they start at one, so we need to subtract one.
|
||||
target_date = date.today()
|
||||
if number is not None:
|
||||
target_date = settings.start_date + timedelta(days=number - 1)
|
||||
target_date = settings.start_date + timedelta(days=number)
|
||||
|
||||
if target_date > date.today():
|
||||
raise HTTPException(
|
||||
@@ -45,13 +46,15 @@ async def daily_puzzle(
|
||||
if daily_puzzle is not None:
|
||||
board = [list(daily_puzzle.board[i * 4 : i * 4 + 4]) for i in range(4)]
|
||||
return DailyPuzzleDTO(
|
||||
number=(date.today() - settings.start_date).days,
|
||||
number=daily_puzzle.number,
|
||||
board=board,
|
||||
solutions=json.loads(daily_puzzle.solutions),
|
||||
extra=json.loads(daily_puzzle.extra),
|
||||
word_defs=json.loads(daily_puzzle.definitions),
|
||||
)
|
||||
puzzle = generator.generate(target=10)
|
||||
|
||||
loop = asyncio.get_running_loop()
|
||||
puzzle = await loop.run_in_executor(None, generator.generate, 10)
|
||||
compressedboard = "".join("".join(row) for row in puzzle.board)
|
||||
await Puzzle(
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user