Quickstarters
CRUD Samples
How to Build a CRUD App with Python?
34 мин
обзор в этом учебном пособии вы научитесь создавать базовое crud (создание, чтение, обновление, удаление) приложение с использованием python мы будем использовать back4app в качестве платформы для упрощения управления вашими данными этот гид проведет вас через настройку проекта back4app, создание гибкой схемы данных и написание скриптов на python для выполнения операций crud через вызовы rest api сначала вы создадите проект back4app под названием basic crud app python который предоставляет масштабируемое, нереляционное решение для хранения данных вы определите свою модель данных, задав классы и их поля, либо вручную через панель управления back4app, либо с помощью встроенного ai агента затем вы изучите приложение back4app admin app, интерфейс перетаскивания, который упрощает управление вашими данными наконец, вы свяжете ваше python приложение с back4app, выполняя безопасные операции crud с помощью вызовов restful api после завершения этого руководства вы разработаете готовое к производству приложение на python, которое выполняет основные crud задачи вместе с безопасной аутентификацией пользователей и управлением данными что вы узнаете как создать приложение crud на python с надежным, нереляционным бэкендом методы построения и интеграции масштабируемого бэкенда с вашим кодом на python как эффективно использовать приложение back4app admin для управления записями данных подходы к развертыванию, включая контейнеризацию с docker для вашего приложения на python предварительные требования убедитесь, что у вас есть следующее перед тем, как продолжить аккаунт back4app с новым настроенным проектом нужна помощь? посетите начало работы с back4app https //www back4app com/docs/get started/new parse app настройка разработки на python используйте ваш предпочтительный ide (например, pycharm или vs code) и убедитесь, что установлен python 3 7+ базовое понимание python, объектно ориентированного программирования и rest api обратитесь к документации python https //docs python org/3/ при необходимости шаг 1 – настройка вашего проекта инициация нового проекта back4app войдите в свою учетную запись back4app выберите кнопку “новое приложение” на вашей панели управления введите имя проекта basic crud app python и следуйте инструкциям для завершения настройки создать новый проект после настройки ваш проект появится на панели управления, закладывая основу для вашей конфигурации бэкенда шаг 2 – создание вашей модели данных определение ваших структур данных для этого crud приложения вам необходимо определить несколько классов (коллекций) в вашем проекте back4app примеры ниже описывают основные классы и их соответствующие поля, необходимые для базовых операций crud 1\ класс предметов этот класс хранит информацию о каждом предмете поле тип данных описание ид идентификатор объекта автоматически сгенерированный уникальный идентификатор название строка название предмета описание строка краткий обзор предмета создано дата метка времени, указывающая, когда элемент был создан обновлено дата метка времени, указывающая на последнее изменение 2\ класс пользователей этот класс обрабатывает учетные данные пользователей и аутентификацию поле тип данных описание ид идентификатор объекта автоматически сгенерированный уникальный идентификатор имя пользователя строка уникальное имя пользователя для пользователя электронная почта строка уникальный адрес электронной почты пользователя хешпароля строка хэшированный пароль для безопасной аутентификации создано дата время, когда была создана учетная запись обновлено дата время, когда аккаунт был последний раз обновлён вы можете вручную создать эти классы и указать поля через панель управления back4app создать новый класс вы добавляете поля, выбирая тип данных, задавая имя поля, устанавливая значения по умолчанию и отмечая его как обязательное создать колонку использование ai агента back4app для настройки схемы ai агент back4app — это умный инструмент, встроенный в вашу панель управления, который может автоматически генерировать вашу схему данных на основе ваших требований эта функция ускоряет настройку проекта и гарантирует, что ваша модель поддерживает все необходимые функции crud как использовать ai агента откройте ai агента войдите в свою панель управления back4app и перейдите к ai агенту в настройках проекта определите свою модель данных предоставьте полное описание, детализирующее необходимые классы и поля просмотрите и подтвердите ai агент предложит схему на основе ваших данных изучите предложение и подтвердите его для реализации пример запроса create the following classes in my back4app project 1\) class items \ fields \ id objectid (auto generated) \ title string \ description string \ createdat date (auto generated) \ updatedat date (auto updated) 2\) class users \ fields \ id objectid (auto generated) \ username string (unique) \ email string (unique) \ passwordhash string \ createdat date (auto generated) \ updatedat date (auto updated) этот подход экономит время и гарантирует, что ваша модель данных хорошо оптимизирована для нужд вашего приложения шаг 3 – включение админ приложения и выполнение операций crud введение в админ приложение админ приложение back4app – это интерфейс без кода, который позволяет вам эффективно управлять вашими данными на сервере его интуитивно понятные функции перетаскивания позволяют вам легко создавать, просматривать, обновлять и удалять записи активация админ приложения перейдите в меню “дополнительно” на вашей панели управления back4app выберите “админ приложение” и нажмите на “включить админ приложение ” настройте свою учетную запись администратора установив начальные учетные данные это также создаст роли (например, b4aadminuser ) и необходимые системные классы включить админ приложение после активации войдите в админ приложение, чтобы управлять данными вашего приложения панель управления админ приложением использование админ приложения для операций crud в админ приложении вы можете вставить записи выберите “добавить запись” в классе (например, товары), чтобы добавить новые данные просмотреть и редактировать записи нажмите на запись, чтобы увидеть ее детали или обновить поля удалить записи удалите записи, которые больше не нужны этот удобный интерфейс делает управление данными простым шаг 4 – подключение вашего python приложения к back4app с вашим бэкендом готовым, следующий этап – это связывание вашего python приложения с back4app использование rest api вызовов в python поскольку официального parse sdk для python нет, вы будете взаимодействовать с back4app, используя rest api вызовы библиотека python requests идеально подходит для этого 1\ установка необходимой библиотеки запустите следующую команду для установки пакета requests pip install requests 2\ пример получение элементов ниже приведен скрипт на python, который извлекает элементы из вашего проекта back4app import requests def fetch items() url = "https //parseapi back4app com/classes/items" headers = { "x parse application id" "your application id", "x parse rest api key" "your rest api key" } try response = requests get(url, headers=headers) response raise for status() items = response json() get("results", \[]) print("fetched items ", items) except requests requestexception as error print("error fetching items ", error) if name == " main " fetch items() 3\ создание, обновление и удаление элементов вот примеры для других операций crud import requests import json base url = "https //parseapi back4app com/classes/items" headers = { "x parse application id" "your application id", "x parse rest api key" "your rest api key", "content type" "application/json" } def create item(title, description) payload = { "title" title, "description" description } try response = requests post(base url, headers=headers, data=json dumps(payload)) response raise for status() print("item created ", response json()) except requests requestexception as error print("creation error ", error) def update item(object id, new title, new description) url = f"{base url}/{object id}" payload = { "title" new title, "description" new description } try response = requests put(url, headers=headers, data=json dumps(payload)) response raise for status() print("item updated ", response json()) except requests requestexception as error print("update error ", error) def delete item(object id) url = f"{base url}/{object id}" try response = requests delete(url, headers=headers) response raise for status() print("item deleted successfully ") except requests requestexception as error print("deletion error ", error) if name == " main " \# example usage create item("sample item", "this is a test item ") \# to update or delete, replace 'object id' with a valid id интегрируйте эти функции в логику вашего приложения по мере необходимости шаг 5 – укрепление безопасности бэкенда реализация контроля доступа защитите свои данные, установив правила контроля доступа например, вы можете гарантировать, что только владелец элемента может просматривать или изменять его, используя определенные настройки acl через ваши api вызовы при создании частного элемента включите настройки acl в ваш полезный груз подробная конфигурация может быть выполнена в вашей панели управления back4app установка разрешений на уровне класса (clp) настройте clp в настройках вашего проекта back4app, чтобы обеспечить соблюдение стандартных политик безопасности, гарантируя, что только аутентифицированные пользователи имеют доступ к определенным классам шаг 6 – реализация аутентификации пользователей управление регистрацией и входом пользователей back4app поддерживает аутентификацию пользователей через встроенный класс user следующие примеры демонстрируют, как вы можете регистрировать и аутентифицировать пользователей с помощью вызовов python rest api import requests import json user url = "https //parseapi back4app com/users" user headers = { "x parse application id" "your application id", "x parse rest api key" "your rest api key", "content type" "application/json" } def sign up(username, password, email) payload = { "username" username, "password" password, "email" email } try response = requests post(user url, headers=user headers, data=json dumps(payload)) response raise for status() print("user registered ", response json()) except requests requestexception as error print("registration error ", error) def log in(username, password) url = f"{user url}/login?username={username}\&password={password}" try response = requests get(url, headers=user headers) response raise for status() print("logged in user ", response json()) except requests requestexception as error print("login error ", error) if name == " main " \# example usage sign up("newuser", "securepassword", "user\@example com") log in("newuser", "securepassword") эта настройка поддерживает управление сессиями, сброс паролей и другие функции аутентификации шаг 7 – развертывание вашего python приложения back4app предоставляет простой процесс развертывания вы можете развернуть ваше python приложение, используя такие методы, как контейнеризация docker 7 1 создание вашего python приложения упакуйте ваше приложение используйте предпочитаемый вами метод (например, создайте виртуальную среду и упакуйте ваш код) проверьте пакет убедитесь, что все зависимости установлены и ваши скрипты работают как ожидалось 7 2 организация структуры вашего проекта типичный проект на python может выглядеть так basic crud app python/ \| app/ \| | init py \| | main py \| | crud py \| | auth py \| requirements txt \| dockerfile \| readme md например, ваш crud py может включать функции, показанные выше, для обработки элементов 7 3 докеризация вашего python приложения чтобы контейнеризировать ваше приложение, включите dockerfile в директорию вашего проекта \# use an official python runtime as the base image from python 3 9 slim \# set the working directory workdir /app \# install required packages copy requirements txt run pip install no cache dir r requirements txt \# copy application code copy \# expose the port your app will run on (if applicable) expose 5000 \# define the default command to run the app cmd \["python", "app/main py"] 7 4 развертывание через back4app web deployment подключите ваш репозиторий github разместите ваш python код на github и свяжите его с вашей учетной записью back4app установите параметры развертывания в панели управления back4app перейдите в раздел web deployment, выберите ваш репозиторий (например, basic crud app python ), и выберите ветку настройте параметры сборки установите команду сборки (например, pip install r requirements txt ) и укажите команду запуска разверните ваше приложение нажмите развернуть и следите за логами, пока ваше приложение не станет доступным шаг 8 – завершение и будущие направления отличная работа! вы успешно создали приложение crud на python, интегрированное с back4app вы настроили проект под названием basic crud app python , определили классы для элементов и пользователей, и управляли своими данными через приложение администратора back4app кроме того, вы подключили свои скрипты python к back4app, используя вызовы rest api, и реализовали надежные меры безопасности следующие шаги расширьте ваше приложение добавьте дополнительные функции, такие как расширенная фильтрация, детальные представления или обновления в реальном времени улучшите возможности бэкенда рассмотрите возможность интеграции облачных функций, внешних api или расширенных контролей доступа на основе ролей углубите свои навыки посетите документацию back4app https //www back4app com/docs и изучите больше учебных пособий, чтобы улучшить ваше приложение счастливого кодирования и наслаждайтесь созданием вашего приложения crud на python!