Ошибка аутентификации Supabase 42501 — PythonPython

Программы на Python
Ответить
Anonymous
 Ошибка аутентификации Supabase 42501 — Python

Сообщение Anonymous »

Код: Выделить всё

def save_user_pdfs(user_id, pdf_name, pdf_hash, extracted_text, summary):
print(f"Saving PDF for user_id: {user_id}")  # Debugging
if not user_id:
print("Error: user_id is None or missing")
return False

existing_pdfs = get_user_pdfs(user_id)
if len(existing_pdfs)>5:
return False

data = {
"user_id" : user_id,
"pdf_name" : pdf_name,
"pdf_hash" : pdf_hash,
"extracted_text" : extracted_text,
"summary" : summary,
#"created_at": "now()"
}

#user_id = user.id  # Ensure this is passed to `save_user_pdfs`
print(f"Authenticated User ID: {user_id}")

try:
if data["user_id"]:
print(f"user id is {data['user_id']}")
response = supabase.table("user_pdfs").insert(data).execute()
print("response", response)
return response.data is not None
except Exception as e:
print(f"{e}")
Я получаю эту ошибку:
{'code': '42501', 'details': нет, 'подсказка': нет, 'message': 'новая строка нарушает политику безопасности на уровне строк для таблицы "user_pdfs"'}

Вот моя политика вставки:

alter policy "Включить вставку для пользователей на основе user_id" на "public"."user_pdfs"

для аутентификации

с проверкой (auth.uid()) = user_id);

Это работает, когда я отключаю политику RLS, но не с правилами политики. Я хочу, чтобы только прошедшие проверку подлинности пользователи могли вставлять данные в таблицу user_pdfs в общедоступной базе данных.

Подробнее здесь: https://stackoverflow.com/questions/795 ... 501-python
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»