Форум → Программирование → PHP для идиотов → Как быть со связями при удалении раздела из базы?
Как быть со связями при удалении раздела из базы?
-
В админке сейчас делаю стандартную возможность добавлять/редактировать/удалять раздел. Но вот хочу спросить, есть ли какое то обкатанное решение при удалении связанных разделов? Т.е. допустим есть таблица с автомобильными агрегатами (ну там ГРМ, тормоза, система охлаждения). Решил вдруг админ удалить пункт ГРМ, что тогда делать с запчастями которые входили в ГРМ? Сделать выборку и предложить админу раскидать их в другие системы? Как это правильно делается, или можно как то изначально было по другому все спроектировать?
-
-
13 октября 2011 г. 11:32, спустя 37 минут 58 секунд
kolobok, все зависит от того, что с теми "остатками" нужно сделать администратору. К примеру, это может быть сплошное удаление без угрызений совести, может быть простое "скидывание" всех таких товаров в некую корзину, где они будут себе лежать до того времени, пока администратор не решит их куда-то переместить. По сути они станут не активными. Либо же "сбросятся" все в определенную активную категорию, к примеру "разное/прочее". В общем, вариантов масса, и реализация зависит от задач.
п.с. Вообще один из правильных вариантов на мой взгляд это либо полное удаление всего либо же запрет на удаление категории, пока в ней будет хоть один товар. -
13 октября 2011 г. 11:55, спустя 22 минуты 54 секунды
Вообще удалять плохо, надо скрывать, так как история теряетсяhttps://smappi.org/ - платформа по созданию API на все случаи жизни -
13 октября 2011 г. 13:54, спустя 1 час 58 минут 53 секунды
Просто есть заказ сделать довольно простой сайт для автозапчастей. Вот решил наконец узнать у тех кто с этим сталкивался, как обычно поступают в этом вопросе. Т.е по хорошему мне у заказчика надо было спросить делать ли пункт удаления или нет? Я решил сделать, так как вроде это очевидный пункт, вполне вероятно что им никогда и не воспользуются. Просто в голове пронеслись сразу аналоги, а если бы это были статьи в категориях, или фото в подрубриках каких то, и т.п., т.е то с чем по идее все уже сталкивались и выработано какое то универсальное правило при удалении рубрик/категорий и т.п. -
13 октября 2011 г. 14:51, спустя 57 минут 14 секунд
внешние ключи ON DELETE RESTRICT, чтобы точно ничего не удалилось, а при удалении не пустой категории просто говорить: "переместите всё что внутри куда-нибудь"Work, buy, consume, die -
13 октября 2011 г. 17:11, спустя 2 часа 19 минут 52 секунды
Делай тип таблиц InnoDB и ставь FOREIGN KEY (внешний ключ) в зависимую таблицу
Затем делай связь с ON DELETE CASCADE (что-то такое) - юзай phpmyadmin там удобная менюшка с чекбоксами и подсказками есть для этого) -
13 октября 2011 г. 17:19, спустя 7 минут 45 секунд
on delete cascade точно не стоит делать )))
два клика мышью минус пол сайта, было такое, девочка на вопрос "Вы точно хотите удалить раздел такой-то, в котором находится 12 подразделов и 90 статей?" ответила Да, удалить )Work, buy, consume, die
Пожалуйста, авторизуйтесь, чтобы написать комментарий!