Ръководства

Какво е CRUD? Създаване, четене, актуализиране, изтриване, обяснено

CRUD означава create, read, update and delete – създаване, четене, актуализиране и изтриване: четирите основни неща, които приложението прави със съхранени данни. Добавянето на нов клиент е създаване, преглеждането на списъка с клиенти е четене, промяната на телефонния му номер е актуализиране, а премахването му е изтриване. Повечето бизнес приложения – CRM системи, системи за резервации, проследяване на инвентар, административни панели – са в голямата си част CRUD с правила и добро оформление отгоре.

Защо е важно, когато създаваш с ИИ

CRUD е речникът, който превръща неясна идея за приложение в точна заявка. „Приложение за управление на нашите доставчици“ оставя ИИ да гадае. „Създаване, списък, редакция и изтриване на доставчици, с тези полета“ му казва точно кои екрани, операции в базата данни и сървърни маршрути да изгради.

Това ви дава и контролен списък за тестване. За всеки вид запис във вашето приложение можете да зададете четири въпроса: мога ли да добавя такъв, да ги виждам, да променя един и да премахна един – и може ли това да прави само правилният човек? Учудващо голям брой приложения, създадени с ИИ, могат да създават записи, но не и да ги редактират, или позволяват на всеки да изтрие всичко.

Ежедневна аналогия: кутия с рецепти

Представете си кутия с картички с рецепти на кухненски рафт.

  • Създаване: напишете нова картичка и я приберете.
  • Четене: прелиствате кутията или извадите тази за лазаня.
  • Актуализиране: зачертавате „200 г сирене“ и пишете „250 г“.
  • Изтриване: вадите картичка и я изхвърляте.

Сега добавете правила: само главният готвач може да изхвърля картички, всяка картичка трябва да има заглавие и никой не може да прибере две картички със същото име. Това е CRUD приложение с валидация и права за достъп – а именно такива са повечето реални приложения.

Как CRUD се проявява във всеки слой

Всяка операция се появява на екрана, на сървъра и в базата данни. Когато ги видите една до друга, много неща за това как се строят приложенията става ясно.

ОперацияНа екранаAPI заявка (REST)SQL в базата данни
СъздаванеБутон „Нов“ и формулярPOST /api/suppliersINSERT
ЧетенеСписък с търсене и филтри; страница с подробностиGET /api/suppliers и GET /api/suppliers/42SELECT
АктуализиранеФормуляр „Редактиране“ или редакция на мястоPUT или PATCH /api/suppliers/42UPDATE
ИзтриванеБутон „Изтрий“ с потвърждениеDELETE /api/suppliers/42DELETE (или маркиране на реда като изтрит)

Екранът е frontend-ът, API заявката е начинът, по който frontend-ът комуникира с backend-а, а SQL е начинът, по който backend-ът комуникира с базата данни. Ако тези думи са нови за вас, вижте какво е API и какво е база данни.

Практически пример: проследяване на заеми на техника

Медийният отдел на едно училище дава камери и микрофони на ученици и постоянно губи следа от тях. Искат просто приложение.

Записите. Два вида неща: техника (име, тип, сериен номер, състояние) и заеми (коя техника, на кой ученик, дата на вземане, краен срок, дата на връщане).

CRUD за техниката:

  • Създаване: персоналът добавя нова камера със серийния ѝ номер. Правило: серийните номера трябва да са уникални.
  • Четене: списък на цялата техника, филтруем по тип и по „налична сега“; страница с подробности, показваща историята на заемите на един артикул.
  • Актуализиране: смяна на състоянието на „нуждае се от ремонт“.
  • Изтриване: обикновено не е истинско изтриване. Ако камера с 30 минали заема бъде изтрита, тези записи за заеми губят връзката си. Вместо това я маркирайте като „изведена от употреба“, така че да изчезне от списъка с налични, но историята ѝ да остане. Това се нарича меко изтриване (soft delete).

CRUD за заемите:

  • Създаване: записване на артикул за заем към ученик. Правило: не може да се вземе артикул, който вече е на заем.
  • Четене: „просрочени заеми“ – списък, в който крайният срок е минал и няма дата на връщане.
  • Актуализиране: записване на датата на връщане, когато артикулът се върне.
  • Изтриване: само персоналът, за заеми, въведени по грешка.

Права за достъп. Учениците могат да четат какво е налично; само персоналът може да създава, актуализира или изтрива. Тези проверки се изпълняват на сървъра, а не само чрез скриване на бутони.

Това е цялото приложение. Интересните части – без двойно заемане, списък с просрочените, история за всеки артикул – са правила и заявки отгоре на обикновения CRUD.

Ключови термини

  • Запис (ред): един елемент, например един доставчик или един заем.
  • Същност / ресурс: вид запис, например „доставчици“. Обикновено всяка получава своя таблица и свой набор от CRUD екрани.
  • Валидация: проверки на въведеното – задължителни полета, валиден имейл, положително количество. Правете я във формуляра за удобство и на сървъра за сигурност.
  • Меко изтриване (soft delete): маркиране на запис като изтрит или архивиран вместо премахването му, така че историята и връзките да се запазят.
  • Странициране (pagination): показване на дълъг списък по една страница наведнъж, така че приложението да остане бързо.
  • Одитен журнал: запис на това кой какво е създал, променил или изтрил и кога.
  • Административен панел: набор от CRUD екрани, с които персоналът управлява данните на приложението.

Чести грешки и заблуди

  • Забравяне на една от четирите операции. Приложенията често се пускат със създаване и четене, но без редакция, така че всяка грешка в изписването означава изтриване и повторно въвеждане. Проверете и четирите за всяка същност.
  • Изтривания, които чупят неща. Изтриването на клиент, който има фактури, може да остави фактури без връзка или да изтрие историята. Решете за всяка същност: блокиране на изтриването, меко изтриване или изтриване и на свързаните записи.
  • Права само в интерфейса. Скриването на бутона „Изтрий“ не спира някого да изпрати DELETE заявката. Сървърът трябва да проверява кой пита.
  • Актуализиране по идентификатор без проверка на собствеността. Ако потребител А може да редактира /api/notes/42, като смени число в адреса, той може да редактира бележката на потребител Б. Всяка актуализация и всяко изтриване трябва да потвърждава, че записът принадлежи на заявителя.
  • Без потвърждение при изтриване. Едно погрешно натискане не бива да унищожи данни. Изисквайте стъпка за потвърждение или възможност за отмяна.
  • „CRUD означава базово, затова не си заслужава да се строи.“ Много ценни продукти са CRUD приложения, които се вписват в работен процес по-добре от общ инструмент.

Какво да поискате от вашия ИИ инструмент

Използвайте този шаблон за всяка същност, една по една:

Създай функционалност suppliers (доставчици) със списък, създаване, редакция и изтриване. Полета: име (задължително), имейл за контакт (валиден имейл), телефон, категория (една от: храна, опаковки, почистване), бележки. Списък със търсене по име и филтър по категория, по 20 на страница. Потвърди преди изтриване; ако доставчикът има поръчки, архивирай вместо да изтриваш. Само влезли служители могат да създават, редактират или архивират – наложи това на сървъра.

После тествайте и четирите операции – като потребител с право на достъп и като някой, който не трябва да има достъп. След като една същност работи, добавете следващата. Как да създадете вътрешен инструмент показва как CRUD екраните се превръщат в пълноценно административно приложение, а какво е Postgres обяснява базата данни, върху която стоят повечето от тези приложения.

CRUD приложения в Mythex

CRUD приложенията са едно от нещата, които ИИ инструментите за създаване на приложения вършат най-добре, и Mythex не прави изключение. Поискайте в чата същността и нейните полета, а Mythex прикачва към проекта база Postgres, създава таблицата и изгражда екраните със списък, формуляр и подробности в живо преглеждане; после можете да пуснете /test, за да проверите потока. Документацията има рецепта за CRUD приложение със стартов промпт, а генераторът на вътрешни инструменти и шаблоните за табла са добри места за начало.

Въпроси

Какво означава CRUD?

CRUD означава създаване, четене, актуализиране и изтриване: добавяне на нов запис, преглеждане на записи, промяна на запис и премахване на един. Почти всяко приложение, което съхранява данни, е изградено от тези четири операции.

Какво е CRUD приложение?

CRUD приложение е приложение, чиято основна задача е управлението на записи чрез формуляри, списъци и страници с подробности, например CRM, проследяване на инвентар, административен панел за резервации или задна част на сайт за обяви за работа. Повечето вътрешни инструменти и административни панели са CRUD приложения.

Как CRUD се свързва с REST API?

В типичен REST API създаването използва POST заявка, четенето – GET, актуализирането – PUT или PATCH, а изтриването – DELETE. След това бекендът изпълнява съответната операция в базата данни: INSERT, SELECT, UPDATE или DELETE.

Прекалено проста ли е CRUD апликацията, за да е ценна?

Не. Голяма част от полезния бизнес софтуер е CRUD с добри правила, права за достъп и отчети отгоре. Стойността е в доброто моделиране на данните и в съобразяването с работния процес, а не в необичайна технология.

Mythex · Pricing · Създай всичко с ИИ · Шаблони за уебсайтове и приложения · Mythex в сравнение · Речник на създаването на приложения с ИИ · Безплатни инструменти за създаване на приложения с ИИ · English

English አማርኛ العربية বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)