Подключение Supabase
Подключиться можно двумя способами: через Supabase OAuth — быстро и без ручного копирования ключей, или по ключам API — этот вариант нужен для self-hosted. Если своего сервера ещё нет, у нас есть разбор установки Supabase на свой сервер — от аренды VPS до SSL и S3-хранилища.
Подключение через OAuth
- Откройте Settings & Integrations и перейдите в секцию Supabase.
- Выберите вкладку Connect with Supabase OAuth.
- Нажмите Connect to Supabase.
- Выберите организацию Supabase и подтвердите доступ.
- После авторизации выберите существующий проект Supabase или нажмите Create New Project.
- Для нового проекта укажите имя и регион и нажмите Create.
- Скопируйте и сохраните пароль базы — второй раз его не покажут.
- Нажмите Done.
Подключённый проект виден в настройках Supabase: оттуда его можно открыть в новой вкладке или переключиться на другой.
После создания или изменения таблиц в Supabase нажмите Get Schema — иначе FlutterFlow продолжит работать со старой структурой.
Подключение по ключам API
Здесь проект связывается вручную: вы сами переносите URL и ключ из Supabase в FlutterFlow.
Этот способ рассчитан на self-hosted базы Supabase.
- Создайте проект в панели Supabase, если его ещё нет.
- В проекте Supabase откройте Project Settings > API и скопируйте Project URL.
- Вернитесь во FlutterFlow: Settings and Integrations > Integrations > Supabase. Включите тумблер и вставьте API URL.
- В том же разделе API в Supabase скопируйте anon key (блок Project API keys) и вставьте его в поле Anon Key во FlutterFlow.
- Нажмите Get Schema — появится список таблиц Supabase с их структурой.
- Если у какой-то колонки тип Array, тип её элементов нужно указать вручную: нажмите «Click to set Array type» и выберите подходящий.
После создания или изменения таблиц нажмите Get Schema, чтобы FlutterFlow подтянул актуальную структуру.
Создание таблиц в Supabase
Если таблиц ещё нет, создайте их. На старте можно снять галочку Enable Row Level Security (RLS), чтобы доступ к данным ничем не ограничивался.
Отключённый RLS удобен на этапе разработки, но перед публикацией приложения его нужно включить обратно и написать политики доступа под свои задачи. Иначе таблицы открыты всем.
Пример ниже — таблица «assignments» со связью по внешнему ключу: колонка created_by ссылается на public.users.id с on delete cascade. Удалили пользователя из «public.users» — вместе с ним удалятся и его записи в «assignments».
Для аутентификации через Supabase понадобится таблица «users».