Skip to content

Commit 4ecd424

Browse files
committed
fix routing
1 parent 9cd6ed8 commit 4ecd424

File tree

1 file changed

+16
-7
lines changed

1 file changed

+16
-7
lines changed

page_analyzer/app.py

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -41,17 +41,26 @@ def create_url():
4141

4242
# Нормализация URL
4343
normalized_url = url_input.strip()
44+
parsed_input_url = urlparse(normalized_url)
45+
base_input_domain = f"{parsed_input_url.scheme}://{parsed_input_url.netloc}"
4446

4547
# Проверка на наличие URL в базе данных
4648
with get_db_connection() as conn:
4749
with conn.cursor() as cur:
48-
cur.execute('SELECT id FROM urls WHERE name = %s', (normalized_url,))
49-
existing_url = cur.fetchone()
50-
51-
if existing_url:
52-
url_id = existing_url[0]
53-
flash('Страница уже существует', 'error')
54-
return redirect(url_for('url_detail', url_id=url_id))
50+
cur.execute('SELECT id, name FROM urls')
51+
existing_urls = cur.fetchall()
52+
53+
# Проверяем, если в базе данных есть URL
54+
if existing_urls:
55+
for existing_url in existing_urls:
56+
# Убедитесь, что у вас есть правильный доступ к элементам
57+
if len(existing_url) > 1: # Проверяем, что у нас есть как минимум 2 элемента
58+
parsed_existing_url = urlparse(existing_url[1])
59+
base_existing_domain = f"{parsed_existing_url.scheme}://{parsed_existing_url.netloc}"
60+
61+
if base_input_domain == base_existing_domain:
62+
flash('Страница уже существует', 'error')
63+
return redirect(url_for('url_detail', url_id=existing_url[0]))
5564

5665
# Сохранение нового URL в базу данных
5766
cur.execute('INSERT INTO urls (name) VALUES (%s) RETURNING id', (normalized_url,))

0 commit comments

Comments
 (0)