@djangoproject · Post #427 · 30.08.2017 г., 03:37
What happens when you #save within #django? 1- Emit a pre-save signal. 2- Preprocess the data. 3- Prepare the data for the database. 4- Insert the data into the database. 5- Emit a post-save signal.
TGINSIGHT SIMILAR POSTS
Изходен канал @clockstackwheels · Post #227 · 20.02
Допустим, вы разработчик, и вам от пользователя приходит строка user-agent с описанием того, каким браузером он пользуется. В этой строке будет что-то типа такого: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36 И вы хотите из неё узнать мажорную версию Chrome, то есть вытащить число 51. Что вы сделаете? Можно, конечно, написать свой парсер, но я уверен, многие воспользуются регулярными выражениями. Я бы воспользовался. Какое выражение сюда подходит? С виду кажется, что вот такое: /Chrome\/(\d\d)\./g Мы ищем слово Chrome и слэш, затем ловим в группу две цифры, после которых стоит точка. Так? По крайней мере, мышление достаточного количества разработчиков именно таково. Зачастую программистам не хватает умения отойти от техзадания на уровень вещественной сути того, с чем они работают. На самом деле число 51 это версия. Версия будет увеличиваться со временем. «Марти, где твоё четырёхмерное воображение?» Если уже прошло 50 версий, то и следующие 50 не за горами, число станет трёхзначным, регулярка или парсер, сделанные под двухзначные числа, перестанут работать. Трехзначная версия Chrome и Firefox приближается уже сейчас. И да, в них падает куча функций на сайтах, включая крупные корпорации: Yahoo, Bethesda, HBO и бог знает сколько сайтов поменьше. Чисто из-за цифры. Это уже назвали «Проблема сотой версии» по аналогии с «Проблемой 2000 года» (программисты записывали год двумя цифрами, 2000 стал неотличим от 1900). К чему это я? Полезно задумываться о физическом воплощении того, что вы представляете в своей программе. Ваш код должен описывать не столько требования заказчика, сколько законы, по которым существует этот объект в реальном мире. #dev
Hashtags
Търсене: #save
@djangoproject · Post #427 · 30.08.2017 г., 03:37
What happens when you #save within #django? 1- Emit a pre-save signal. 2- Preprocess the data. 3- Prepare the data for the database. 4- Insert the data into the database. 5- Emit a post-save signal.
@graphmessenger · Post #438 · 15.05.2024 г., 09:15
🎞Save Animated Stickers As GIF ❤️Graph Messenger 11.9.0 🗓Added from: May 15, 2024 #features#sticker#save#gif @GraphMessenger @GraphMessengerTips
@djangoproject · Post #428 · 30.08.2017 г., 03:40
How #Django knows to #UPDATE vs. #INSERT when you call #save (), #Django follows this algorithm: If the object’s primary key attribute is set to a value that evaluates to True (i.e., a value other than None or the empty string), Django executes an UPDATE. If the object’s primary key attribute is not set or if the UPDATE didn’t update anything, Django executes an INSERT.
@testflightynoti · Post #37772 · 07.05.2026 г., 08:29
#AllFaves#Save#amp#Organize Join the AllFaves: Save & Organize beta on ✈️#TestFlight 🔗 Link: https://testflight.apple.com/join/q4kYGP5g Shared by Dimitri
@meddahstories · Post #1773 · 22.01.2024 г., 15:28
Я сегодня нагло злоупотребляю пространством своего канала, хвастаясь новинками, но про этот тайтл я просто не могу молчать, ибо рисовка – любовь с первого взгляда и до последнего вздоха. Наконец-то до меня доехал первый том маньхуа "Дикая песнь" (Сэйв, 2020). Сбылась мечта идиота #China#manhua#NaganoHymns#ДикаяПеснь#Save
@testflightynoti · Post #37587 · 06.05.2026 г., 17:36
#Target#Shop#Style#Save Join the Target: Shop. Style. Save. beta on ✈️#TestFlight 🔗 Link: https://testflight.apple.com/join/qcx8yK1s Shared by Dimitri
@botsgram_cu · Post #3971 · 02.06.2021 г., 16:34
@NephoBot Qué puede hacer este bot? Este es un bot administrador de archivos Idioma: Inglés (visto en @BotsGram_cu) #files, #media, #music, #picture, #manager, #file, #collection, #save, #photo, #tags, #video, #access, #search