Можно ли перегенерить слаги?

S_Flash
Posts: 1788
Joined: Mon Mar 08, 2010 9:04 am
Contact:

Можно ли перегенерить слаги?

Post by S_Flash »

(c) SmartCJ Pro V 2.1 Your Build 201904021033
Например, если слаги оказались не той длинны, что надо и хочется их изменить, указав в настройках ротации другую максимальную длину слага?
admin
Site Admin
Posts: 37242
Joined: Wed Sep 10, 2008 11:43 am

Re: Можно ли перегенерить слаги?

Post by admin »

конкретной кнопки такой нет и добавлять на 1 раз кнопку тоже думаю не стоит что б не плодить 100500 кнопку и не усложнять все

думаю лучше прямо в базе обрезать

update `rot_gallery_data1` set gallery_slug = substr(gallery_slug, 1, 30)

получим 30 макс длинну

и конечно обязательный бекап перед изменением базы
Don't forget to run script update
S_Flash
Posts: 1788
Joined: Mon Mar 08, 2010 9:04 am
Contact:

Re: Можно ли перегенерить слаги?

Post by S_Flash »

Отлично. Спасибо!
admin
Site Admin
Posts: 37242
Joined: Wed Sep 10, 2008 11:43 am

Re: Можно ли перегенерить слаги?

Post by admin »

NP)
Don't forget to run script update
S_Flash
Posts: 1788
Joined: Mon Mar 08, 2010 9:04 am
Contact:

Re: Можно ли перегенерить слаги?

Post by S_Flash »

Вопрос! А если вдруг при выполнении данного запроса при укорачивании некоторого слага окажется, что он дублирует уже существующий короткий слаг? Ведь чем короче слаг тем они большге стремятся быть более одинаковыми.. Что произойдёт на этом этапе?
admin
Site Admin
Posts: 37242
Joined: Wed Sep 10, 2008 11:43 am

Re: Можно ли перегенерить слаги?

Post by admin »

такая вероятность конечно есть
можно добавить ID галры в конце - тогда будет 100% уникально

update `rot_gallery_data1` set gallery_slug = concat(gallery_slug, gallery_id)
Don't forget to run script update
S_Flash
Posts: 1788
Joined: Mon Mar 08, 2010 9:04 am
Contact:

Re: Можно ли перегенерить слаги?

Post by S_Flash »

А в теории, что произойдёт, если в базе окажется два или более идентичных слага?
admin
Site Admin
Posts: 37242
Joined: Wed Sep 10, 2008 11:43 am

Re: Можно ли перегенерить слаги?

Post by admin »

при показе галеры возмет первую по совпадению слага
Don't forget to run script update
S_Flash
Posts: 1788
Joined: Mon Mar 08, 2010 9:04 am
Contact:

Re: Можно ли перегенерить слаги?

Post by S_Flash »

1) А если временно сделать уникальный индекс,
2) затем:
update `rot_gallery_data1` set gallery_slug = substr(gallery_slug, 1, 49)
3) А потом убрать индекс.
Будет гарантия того, что не удвоится слаг даже если совпадёт на одном из этапов substr? То есть по идее просто оставит длинным слаги те, которые на этапе обрезания совпадут с уже имеющимися. Я не спец в MySQL, поэтому и хотел поинтересоваться прежден чем искать как делать уникальный индекс и удалять его потом!
admin
Site Admin
Posts: 37242
Joined: Wed Sep 10, 2008 11:43 am

Re: Можно ли перегенерить слаги?

Post by admin »

я думаю оно просто не вставит неуникальный и будут пропуски
но денег то оно не просит, создайте это в обтельной базе и будет ясно получится или нет
Don't forget to run script update
Post Reply