Форум программистов, компьютерный форум, киберфорум
Python: Django
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.62/13: Рейтинг темы: голосов - 13, средняя оценка - 4.62
4 / 4 / 2
Регистрация: 09.07.2016
Сообщений: 62

Django. Заполнение новыго поля (в базе) данными из старого

16.08.2017, 16:54. Показов 2805. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте.
В базе есть поле Название товаров, в котором уже много записей. Затем было добавлено новое поле, в котором должны сохраняться записи из Название товаров - например, товар 1, но в виде товар_1.
Для новых записей Название товаров есть метод save. Что делать со старыми? Как их пересохранить?
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
16.08.2017, 16:54
Ответы с готовыми решениями:

Django редактирование поля в базе данных
только начинаю изучать джанго,разобрался с добавлением в базу данных через форму полей и выводом их в html таблицу,но не могу разобраться...

Заполнение поля типа Memo данными
Я создал BDE БД, но нигде не могу найти, как заполнить поля с типом Memo данными. При компиляции таблица с данными отображается нормально,...

Программное заполнение табличного поля данными из справочника
Я пытаюсь заполнить табличное поле данными из таблицы, но в результате оно остается пустым. Я действую так: 1)Создал реквизит формы...

10
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5972 / 3734 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
17.08.2017, 12:26
Как-то так:
Python
1
2
3
for i in Items.object.filter(name2__isnull=True):
    i.name2 = i.name
    i.save()
Или один SQL-запросик.

Добавлено через 53 секунды
И вопрос: а зачем дублировать данные в базе?
0
4 / 4 / 2
Регистрация: 09.07.2016
Сообщений: 62
17.08.2017, 12:55  [ТС]
Цитата Сообщение от Рыжий Лис Посмотреть сообщение
И вопрос: а зачем дублировать данные в базе?
Ну я использовал имена товаров (с _ вместо пробела) как классы html елементов, чтобы нормально выбирать по селектору.
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5972 / 3734 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
17.08.2017, 13:19
Лучший ответ Сообщение было отмечено Pewpewpewpew как решение

Решение

Юникод? Прям так?
HTML5
1
<p id="Товар_1">...
Ужас. А чем фильтры не угодили?
HTML5
1
{{ i.name|slugify }}
Добавлено через 46 секунд
https://stackoverflow.com/ques... -in-django
1
4 / 4 / 2
Регистрация: 09.07.2016
Сообщений: 62
17.08.2017, 13:22  [ТС]
Я понял, что это можно сделать через views
0
145 / 113 / 31
Регистрация: 12.06.2011
Сообщений: 1,246
20.08.2017, 12:06
В html в id подчерки стоит ли? Дефисы не лучше ли?
См. гуглевый стайл гайд:
https://google.github.io/style... Delimiters

А вот тут объясняется, почему:
https://stackoverflow.com/ques... underlines


Второе: конвертить будешь - в транзакции бы это делать желательно. Как-то это не прозвучало.

Добавлено через 3 минуты
Цитата Сообщение от Рыжий Лис Посмотреть сообщение
И вопрос: а зачем дублировать данные в базе?
Да. Идея не очень хорошая, мне кажется.
Я бы в шаблоне сделал как-то id="{{ object.model_name }}-{{object.id}}".
Т.е. не тащил бы эти имена в идентификатор вообще.
И вообще - не факт, что они будут уникальны. Это надо уникальность поддерживать еще - SlugField делать. Или как-то иначе, unique объявлять. В общем, зачем. Автоинкрементный идентификатор в базе уже уникален, удобен и хорош со всех сторон. Если я правильно понял задачу.
1
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5972 / 3734 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
20.08.2017, 12:19
Цитата Сообщение от Kifsif Посмотреть сообщение
Да. Идея не очень хорошая, мне кажется.
На самом деле идея имеет право на жизнь, если потом, к примеру, по новому полю будут делаться запросы. Например, часть url: /items/tovar_1. Но правильно говорите, нужно добавить уникальность, +желательно индекс.
0
145 / 113 / 31
Регистрация: 12.06.2011
Сообщений: 1,246
20.08.2017, 12:36
А по идентификатору нельзя разве найти товар? Примерно так: Goods.objects.get(pk=1).
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5972 / 3734 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
20.08.2017, 12:37
Можно, но это же скучно...
0
145 / 113 / 31
Регистрация: 12.06.2011
Сообщений: 1,246
20.08.2017, 12:48
Ребята, я скучный человек. Вы мне сначала покажите топовый магазин, который сделал вот так, как вы задумали.
И скажите - хочу, как у них.

А потом будем развеивать скуку.

Вот я заглянул на Амазон: https://www.amazon.com/s/ref=n... s=computer

У них айдишники result_1, result_2.

А товары называются примерно: "Dell OptiPlex Desktop Complete Computer Package with Windows Home 32-Bit - Keyboard, Mouse, 17" LCD Monitor (Certified Refurbished)"

Куда вы тут с идентификаторами из названия с подчерками?
1
4 / 4 / 2
Регистрация: 09.07.2016
Сообщений: 62
20.08.2017, 18:28  [ТС]
Цитата Сообщение от Kifsif Посмотреть сообщение
Куда вы тут с идентификаторами из названия с подчерками?
Да, неудобно получается.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
20.08.2017, 18:28
Помогаю со студенческими работами здесь

Заполнение поля одной модели данными с другой
Добрый день. Разрабатываю приложение для Аэропорта. Есть две модели: public class Flight { public...

Создание поля в существующей таблице и заполнение его данными
Дамы и господа, такой вопрос: Есть две таблицы, к примеру, табл1 Владельцы животных - информация о владельцах животных табл2...

Заполнение поля таблицы данными из другой таблицы
Добрый день! у меня классическая задача, но я не могу её решить. У меня есть две таблицы в базе postgresql – table1 и table2 В...

Автоматическое заполнение ячеек данными, взятыми из одной ячейки с динамическими данными
Добрый день! Подскажите, есть ли решение моей задачи: В одной и той же ячейке постоянно (ежесекундно) меняется число (данные...

Заполнение тч поля из справочника(заполнение ссылочного поля)
Здравствуйте! Существует док с полем Справочник.Ссылка.Номенклатура и спрНоменклатура вопрос состоит вот в чем создал запрос на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru