JavaScript
Database Operations
18 мин
выполнение операций с безсерверными базами данных введение в этом разделе объясняется, как реализовать crud (создание, чтение, обновление и удаление) операции в среде javascript через back4app также предоставляются фрагменты кода и онлайн среда для выполнения и тестирования вашего кода без локальной настройки смотрите больше о parse sdk на справочник api parse javascript sdk и документация parse с открытым исходным кодом для javascript sdk предварительные требования нет дополнительных требований, кроме базовых знаний javascript дополнительно чтобы завершить этот учебник, используя ваше собственное приложение, вам потребуется приложение, созданное и настроенное для javascript на back4app примечание следуйте учебнику по установке javascript parse sdk чтобы узнать, как это сделать 1 настройка окружения этот гид использует платформу jsbin в качестве редактора кода использовать его очень просто, все, что вам нужно сделать, это открыть его главную страницу и нажать на кнопки html html , javascript javascript и консоль консоль первый шаг к началу кодирования — это включить parse api и добавить ключи вашего приложения для этого учебника было создано публичное приложение back4app, чтобы вы могли проверять свои изменения в базе данных, не создавая собственное приложение необязательно чтобы проверить базу данных parse для этого примера, вам нужно создать собственное приложение и получить доступ к панели управления parse панели управления parse чтобы включить parse api в ваше приложение, добавьте следующую строку кода внутри тега head html html затем добавьте свои учетные данные в начале javascript javascript файла значения по умолчанию — это те, которые относятся к нашему публичному приложению //paste your application key and javascript key, respectively parse initialize("your application id", "your javascript key"); parse serverurl = "https //parseapi back4app com/"; в этом учебнике мы создадим crud операции на основе класса pet, который имеет поля имя и возраст, где имя — это строка, а возраст — это число поэтому код должен начинаться с создания подкласса класса pet, чтобы его можно было использовать позже в наших функциях, как показано ниже var pet = parse object extend("pet"); все основные операции потребуют от пользователя указать желаемое имя питомца таким образом, создайте глобальную переменную “textname” также хорошей идеей будет создать переменную “textage”, которая будет использоваться в методах создания и обновления var textname = "myname"; var textage = 10; 2 создать функция создать создать создаст нового питомца с именем и возрастом, которые вы указали в переменных “textname” и “textage” чтобы создать эту функцию, просто выполните следующие шаги создайте новый экземпляр класса pet parse с помощью команды используйте функцию set set для установки параметров этого объекта вызовите функцию save save , которая фактически зарегистрирует питомца в вашей базе данных в parse dashboard parse dashboard вы можете открыть back4app javascript create function , чтобы увидеть код, который уже был реализован код для функции создать создать написан ниже create js create(); function create() { mypet = new pet(); mypet set("name", textname); mypet set("agepet", textage); mypet save() then(function(pet){ console log('pet created successful with name ' + pet get("name") + ' and age ' + pet get("agepet")); }) catch(function(error){ console log('error ' + error message); }); } чтобы протестировать это, вставьте этот фрагмент кода в файл javascript в jsbin , нажмите на the запустить запустить кнопку в консольной части и дождитесь вывода должно быть выведено сообщение о том, что питомец был успешно создан чтобы подтвердить, что новый объект находится в базе данных, вы можете получить доступ к панели управления parse панели управления parse или вы можете закодировать функцию чтения чтения 3 чтение функция чтения чтения отвечает за запрос к базе данных и возвращает объект, который соответствует вашим критериям поиска она также может использоваться для проверки существования объекта вот пошаговое руководство по созданию вашей собственной функции чтения чтения создайте экземпляр класса query от parse добавьте ограничения к вашему запросу, чтобы сузить поиск дополнительные варианты ограничений можно найти в документации по запросам parse выполните метод поиска запроса в этом учебнике будет использоваться query first query first для получения только первого элемента, который соответствует вашим критериям если операции успешны, будет возвращен объект питомца если объект не найден, возвращаемый объект будет иметь значение undefined вы можете открыть функцию чтения javascript back4app чтобы увидеть код, который уже был реализован код для функции чтения чтения следующий read js read(); function read() { query = new parse query(pet); query equalto("name", textname); query first() then(function(pet){ if(pet){ console log('pet found successful with name ' + pet get("name") + ' and age ' + pet get("agepet")); } else { console log("nothing found, please try again"); } }) catch(function(error){ console log("error " + error code + " " + error message); }); } чтобы протестировать чтение чтение , вставьте фрагмент в ваш файл javascript jsbin когда код выполнится, он выведет возраст найденного питомца (если найден) или выведет сообщение о том, что питомец не найден если при тестировании напечатанный возраст не соответствует возрасту вашего объекта, это означает, что есть больше объектов с таким же именем, но ваш запрос возвращает только один из них поэтому, чтобы действительно протестировать чтение чтение функции, создайте объект с другим именем, который еще никто не создавал, затем запустите функцию, которая правильно выведет возраст объекта 4 обновление для обновления обновления функции питомец передается в качестве параметра, и функция изменяет его возраст на тот, который вы указали в переменной “textage” чтобы найти питомца, который будет передан, мы используем модифицированную версию нашей чтение чтение функции ниже приведены шаги для создания вашей собственной обновления обновления функции напишите модифицированную функцию чтения под названием readthenupdate readthenupdate , которая вызывает функцию обновления обновления при успешном нахождении питомца в функции обновления обновления используйте функцию set set для изменения параметров вашего питомца вызовите функцию сохранить сохранить для этого питомца, чтобы отправить изменения в базу данных вы можете открыть функцию обновления javascript back4app чтобы увидеть код, который уже был реализован вот код для функции readthenupdate readthenupdate и update update функции update js readthenupdate(); function readthenupdate() { query = new parse query(pet); query equalto("name", textname); query first() then(function (pet) { if (pet) { console log('pet found with name ' + pet get("name") + ' and age ' + pet get("agepet")); update(pet); } else { console log("nothing found, please try again"); } }) catch(function (error) { console log("error " + error code + " " + error message); }); } function update(foundpet) { textname = "mynameupdated"; textage = 20; console log(textage); foundpet set('name', textname); foundpet set('agepet', textage); foundpet save() then(function (pet) { console log('pet updated! name ' + pet get("name") + ' and new age ' + pet get("agepet")); }) catch(function(error) { console log('error ' + error message); }); } чтобы подтвердить, что функция update update работает, вставьте код выше в файл javascript на странице jsbin используйте необычное имя для вашего объекта, чтобы не конфликтовать с другими пользователями, затем выполните следующие шаги 1\ создайте объект с желаемым именем 2\ проверьте, что объект создан с вашей read read функцией 3\ вызовите вашу readthenupdate readthenupdate функцию, созданную в этой теме, с возрастом, отличным от оригинального 4\ проверьте, изменился ли возраст животного, вызвав вашу read read функцию снова 5 удалить функция удалить удалить стирает питомца, полученного с помощью функции читать читать это необратимое действие, что означает, что вы должны быть осторожны при его использовании, особенно потому, что ваша функция читать читать может вернуть больше объектов, чем вы на самом деле хотите удалить из за этого рекомендуется удалять только один объект за раз шаги для написания вашей собственной функции удалить удалить можно найти ниже в конце успешного выполнения вашей функции “читать” ( readthendelete readthendelete , сделайте вызов функции удалить удалить в функции deletepet deletepet , вызовите метод destroy на полученном объекте “foundpet” вы можете открыть функцию удаления javascript back4app , чтобы увидеть код, который уже был реализован вот код для функции readthendelete readthendelete и deletepet deletepet функции delete js readthendelete(); function readthendelete() { query = new parse query(pet); query equalto("name", textname); query first() then(function (pet) { if (pet) { console log('pet found with name ' + pet get("name") + ' and age ' + pet get("agepet")); deletepet(pet); } else { console log("nothing found, please try again"); return null; } }) catch(function (error) { console log("error " + error code + " " + error message); return null; }); } function deletepet(foundpet) { foundpet destroy() then(function(response) { console log('pet '+ foundpet get("name") + ' erased successfully'); }) catch(function(response, error) { console log('error '+ error message); }); } чтобы протестировать это, рекомендуется создать объект с необычным именем, как и другие функции, чтобы не конфликтовать с объектами от других пользователей просто вставьте фрагмент кода в jsbin и запустите код с именем вашего объекта и объектом, который будет удален затем вы можете вызвать вашу read read функцию, чтобы подтвердить, что нет объектов с таким именем если функция read возвращает объект, чего не должно быть, это, вероятно, означает, что у вас есть больше объектов с тем же именем, и она вернула один из них, так как функция delete delete просто удаляет один объект вы можете проверить ваш объект, получив доступ к вашему parse dashboard parse dashboard готово! на данный момент вы узнали, как выполнять основные операции crud с помощью javascript