Перейти к содержанию

Рекомендуемые сообщения

Привет всем. Что делать, если ссылки товаров или категорий совпадают? И почему они вообще должны быть уникальными? Разве не может быть в разных категориях одинаковых подкатегорий? Скажем есть категории: Мужчинам и Женщинам и в каждой из них есть подкатегории Брюки, ссылка будет такого вида: bruki, но opencart будет ругаться, т.к. такая ссылка уже используется у другой категории. Как это исправить?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
5 минут назад, abonnent сказал:

Привет всем. Что делать, если ссылки товаров или категорий совпадают? И почему они вообще должны быть уникальными? Разве не может быть в разных категориях одинаковых подкатегорий? Скажем есть категории: Мужчинам и Женщинам и в каждой из них есть подкатегории Брюки, ссылка будет такого вида: bruki, но opencart будет ругаться, т.к. такая ссылка уже используется у другой категории. Как это исправить?

Поймите... это НЕ иерархическая система согласно архитектуре opencart
Это реляционная архитектура, поэтому правильно будут уникальные названия (не путать с полным ЧПУ) категорий
Потому как могут возникнуть ситуации конфликтов, поэтому автор opencart и использует архитектуру уникальный названий обьектов для ЧПУ. Т.е. все согласно стандартов программирования и разработки архитектуры
Так что не выдумывайте "велик".

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Только что, markimax сказал:

Поймите... это не иерархическая система согласно архитектуре
Это реляционная архитектура, поэтому правильно будут уникальные названия (не путать с полным ЧПУ) категорий
Потому как могут возникнуть ситуации и конфликтов, поэтому автор opencart и использует архитектуру уникальный названий обьектов для ЧПУ

Это крайне неудобно, т.к. у разных производителей названия товаров тоже могут совпадать. Неужели нельзя сделать что-то, что могло бы различать категории и товары?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
10 минут назад, abonnent сказал:

Это крайне неудобно

 

Это "крайне"  правильно. И категории и товары отлично "различаются"
Вы что не можете сделать ЧПУ

site.com/brand-tovar/

?!
Включаем "думалку"

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
6 минут назад, markimax сказал:

 

Это "крайне"  правильно. И категории и товары отлично "различаются"
Вы что не можете сделать ЧПУ

site.com/brand-tovar/

?!
Включаем "думалку"

Это лишнее телодвижение, которое отнимает уйму времени. Тут тысячи товаров, и вы предлагаете при заполнении еще и название производителя указывать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
33 минуты назад, abonnent сказал:

Привет всем. Что делать, если ссылки товаров или категорий совпадают? И почему они вообще должны быть уникальными? Разве не может быть в разных категориях одинаковых подкатегорий? Скажем есть категории: Мужчинам и Женщинам и в каждой из них есть подкатегории Брюки, ссылка будет такого вида: bruki, но opencart будет ругаться, т.к. такая ссылка уже используется у другой категории. Как это исправить?

реализуйте это с помощью url сушностей в мегафильтре, а категория брюки - пусть будет одна.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
10 минут назад, abonnent сказал:

Это лишнее телодвижение, которое отнимает уйму времени. Тут тысячи товаров, и вы предлагаете при заполнении еще и название производителя указывать?

А баги - это не "лишнее" телодвижение. Это в 100500 раз хуже
К примеру кто то поставит в ЧПУ формирователе $max_level = 1; и УПС ... грабли будут, сразу выплывет дубль
И я вам ничего не "предлагаю" я настоятельно рекомендую сделать ПРАВИЛЬНО, согласно стандартов реляционной архитектуры БД
Я бы очень удивился если бы разработчик opencart сделал ЧПУ объектов не уникальными
Так что в opencart все сделано правильно. Если где то по другому, то это явная архитектурная ошибка

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
1 минуту назад, markimax сказал:

А баги - это не "лишнее" телодвижение. Это в 100500 раз хуже
К примеру кто то поставит в ЧПУ формирователе $max_level = 1; и УПС ... грабли будут, сразу выплывет дубль
И я вам ничего не "предлагаю" я настоятельно рекомендую сделать ПРАВИЛЬНО, согласно стандартов реляционной архитектуры БД
Я бы очень удивился если бы разработчик opencart сделал ЧПУ объектов не уникальными
Так что в opencart все сделано правильно. Если где то по другому. То это явная архитектурная ошибка

Ну ведь есть же на этот случай ID, который и будет уникальным. Разве не так? По вашей логике слово спорт может встречаться только однажды и относиться к чему-то одному. Например: машина спортивная , примерный урл: mashina/sport, но ведь кроме машин могут быть спортивными и мотоциклы: motocikl/sport, а кроме мотоциклов еще есть велосипеды спортивные: velosiped/sport. Так что вы неправы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
23 минуты назад, abonnent сказал:

Ну ведь есть же на этот случай ID, который и будет уникальным. Разве не так? По вашей логике слово спорт может встречаться только однажды и относиться к чему-то одному. Например: машина спортивная , примерный урл: mashina/sport, но ведь кроме машин могут быть спортивными и мотоциклы: motocikl/sport, а кроме мотоциклов еще есть велосипеды спортивные: velosiped/sport. Так что вы неправы.

Нет, не правы вы однозначно

Вы судите очень субьективно, не имея квалификации
Надо рассматривать формирование ЧПУ исходя из АРХИТЕКТУРЫ БД
Она реляционная поэтому у обьектов ОБЯЗАНЫ быть уникальные ЧПУ
Если создавать по вашим "предположениям" то рано или поздно очень большая вероятность того что, кто то наступит на грабли и вылезет баг
Это 100500%
Вот поэтому в opencart все сделано согласно требований стандартов разработки реляционной архитектуры.
 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
4 минуты назад, markimax сказал:

Нет, не правы вы однозначно

Вы судите очень субьективно, не имея квалификации
Надо рассматривать формирование ЧПУ исходя из АРХИТЕКТУРЫ БД
Она реляционная поэтому у обьектов ОБЯЗАНЫ быть уникальные ЧПУ
Если создавать по вашим "предположениям" то рано или поздно очень большая вероятность того что, кто то наступит на грабли и вылезет баг
Это 100500%
Вот поэтому в opencart все сделано согласно требований стандартов разработки реляционной архитектуры.
 

В таблице `oc_url_alias` есть следующие столбцы: `url_alias_id`, `query`,`keyword`. Я понимаю , что эта таблица хранит совершенно все урлы, что нет иерархии, но ведь можно сделать, чтобы хотя бы для товаров в поле `keyword` при добавлении товара добавлялся еще и ID. что позволит избежать повторений. Тогда ссылки на товары никогда не совпали бы. Это было бы огромным плюсом

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
4 минуты назад, abonnent сказал:

В таблице `oc_url_alias` есть следующие столбцы

Всё, закрыли тему.
Не правильно, потому что не соответствует стандартам архитектуры
Если бы самолеты делали не по стандартам (как вы "предполагаете") то они падали бы как яблоки осенью
 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
4 минуты назад, markimax сказал:

Всё, закрыли тему.
Не правильно, потому что не соответствует стандартам архитектуры
Если бы самолеты делали не по стандартам (как вы "предполагаете") то они падали бы как яблоки осенью
 

А, ну да, ваше мнение самое правильное и все, что не вписывается в него, значит неправильное))) ЛОГИКА)))

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
19 минут назад, markimax сказал:

Она реляционная поэтому у объектов ОБЯЗАНЫ быть уникальные ЧПУ

Не вижу противоречия.

telephone/samsung

televisor/samsung

 

Суть - ЧПУ - уникальный путь а не "надуманный" архитектурой OC

 

С другой стороны, реализация уникального чпу, однозначно определяет сущность роутера

 

но, можно ведь и

 

site/brand/samsung

site/categegory/samsung

site/product/samsung

Пусть пример и надуманный, но во всех трех вариантах ЧПУ уникально, но существует однозначный route

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
3 минуты назад, chukcha сказал:

site/brand/samsung

site/categegory/samsung

site/product/samsung

Пусть пример и надуманный, но во всех трех вариантах ЧПУ уникально, но существует однозначный route

Да, при иерархической модели архитектуры - так будет правильно
Но модель архитектуры реляционная
Здесь надо исходить из архитектуры
Представим частую ситуацию .. гипотетически
Кто то захочет в opencart чтобы выводилась только последняя категория (часто ставят $max_level = 1) и упс, кто то наступает на грабли.
Здесь надо осознанно отталкиваться от архитектуры. Так что Даниэль все правильно сделал, исходя из различных реальный ситуаций

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
11 минут назад, abonnent сказал:

А, ну да, ваше мнение самое правильное и все, что не вписывается в него, значит неправильное))) ЛОГИКА)))

Это не "мнение" - раз!
И оно НЕ МОЕ а РАЗРАБОТЧИКА OPENCART!
Значит оно не железное, а "железобетонное"

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А у разработчика не может быть ошибочное мнение?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
2 минуты назад, markimax сказал:

Да, при иерархической модели архитектуры - так будет правильно
Но модель архитектуры реляционная
Здесь надо исходить из архитектуры
Представим частую ситуацию .. гипотетически
Кто то захочет в opencart чтобы выводилась только последняя категория (часто ставят $max_level = 1) и упс, кто то наступает на грабли.
Здесь надо осознанно отталкиваться от архитектуры. Так что Даниэль все правильно сделал, исходя из различных реальный ситуаций

Но что мешает хотя бы для товара в его имя (урл) добавить ID? т.е получилось бы так: site.ru/category/subcategory/id-tovar при таком урле все товары всегда будут уникальны и это не противоречит структуре

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Только что, chukcha сказал:

А разработчика не может быть ошибочное мнение?

Может, но не в этом случае :)
Даниэль четко придерживался стандартов реляционной архитектуры

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
5 минут назад, abonnent сказал:

Но что мешает хотя бы для товара в его имя (урл) добавить ID? т.е получилось бы так: site.ru/category/subcategory/id-tovar при таком урле все товары всегда будут уникальны и это не противоречит структуре

Вы не понимаете что такое стандарты и архитектура и что такое костыли и г.. код
Вас в авиации быстро научили бы :mrgreen:
Без обид.
То что вы "предлагаете" это костыли

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
7 минут назад, abonnent сказал:

Но что мешает хотя бы для товара в его имя (урл) добавить ID? т.е получилось бы так: site.ru/category/subcategory/id-tovar при таком урле все товары всегда будут уникальны и это не противоречит структуре

так ничего не мешает вам так сделать, и переписать/написать свой ЧПУ преобразователь

 

9 минут назад, markimax сказал:

Даниэль четко придерживался стандартов реляционной архитектуры

ой.. например здесь

CREATE TABLE IF NOT EXISTS `oc_order_status` (
  `order_status_id` int(11) NOT NULL AUTO_INCREMENT,
  `language_id` int(11) NOT NULL,
  `name` varchar(32) NOT NULL,
  PRIMARY KEY (`order_status_id`,`language_id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
5 минут назад, markimax сказал:

Вы не понимаете что такое стандарты и архитектура и что такое костыли и г.. код
Вас в авиации быстро научили бы :mrgreen:
Без обид.
То что вы "предлагаете" это костыли

"костыли" эти избавляют от проблем

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Только что, abonnent сказал:

"костыли" эти избавляют от проблем

Запомните "костыли" избавляют от одной проблемы, но добавляют гораздо больше проблем в дальнейшем ;)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
2 минуты назад, chukcha сказал:

так ничего не мешает вам так сделать, и переписать/написать свой ЧПУ преобразователь

Это не решит проблемы в целом, т.к. если я это сделаю, то при обновлении системы все слетит. Так что все это должно быть сделано самими разработчиками так считаю

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Это почему же оно слетит?

И как часто вы обновляете систему:

1 минуту назад, abonnent сказал:

Так что все это должно быть сделано самими разработчиками так считаю

К Даниелю!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Только что, abonnent сказал:

Это не решит проблемы в целом, т.к. если я это сделаю, то при обновлении системы все слетит.

НУ вот и ответ на все вопросы, что такое "костыли" !
И в дальнейшем можете наступить на грабли стабильности и совместимости с другими модулями
Так что не изобретайте "велик"
Все там сделано правильно и все пользуются, не у кого не возникает сложностей и проблем.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.