@rubylang

Страница 110 из 1684
Pretorian
17.06.2016
08:19:06
Скажем я знаю что 1 и 2 это одно, 2 и 3 тоже, но 1 есть в бд, а 2 нет, надо забить 3

Максим
17.06.2016
08:19:15
У каждого назначения есть его набор характеристик обязательных и необязательных. И по каждой характеристике каждое значение что уже есть в системе становится доступным для выбора из списка.

Частично решит проблему.

Остальное на уровне эвристики и нейронных алгоритмов.

Google
Pretorian
17.06.2016
08:20:25
Может разбрасывать по разным группам если не найден аналог, а потом объединять по мере поступления данных?

Максим
17.06.2016
08:20:59
Назначение и есть группа, только более гибкая. Сами назначения можно в дерево запилить.

Pretorian
17.06.2016
08:21:14
Дерево то тут зачем?

Максим
17.06.2016
08:21:24
Для операторов. Им нагляднее будет.

«болт» и «гайка» что бы были в «крепёж».

Pretorian
17.06.2016
08:21:57
Не, забейте на операторов, я просто упростил

Мне интересна наработка данных на начальном этапе

Максим
17.06.2016
08:22:41
Дерево групп тоже вариант. Но одна запчасть может находиться в разных группах.

Pretorian
17.06.2016
08:23:11
Нет, ни каких групп, есть оригинал и у него аналоги

В 2 х группах не может находится

Максим
17.06.2016
08:23:31
Да, а мы глубже продумывать начали.. :)

Pretorian
17.06.2016
08:23:54
Не, не, ненадо глубже, тут примитив нужен

Максим
17.06.2016
08:24:22
Если с таким упрощением, то тут даже вариант заводишь оригинал, потом аналоги и указываешь «чего они аналоги» подойдёт.

Google
Pretorian
17.06.2016
08:24:27
Скажу так, ввел номер детали, тебе все аналоги дали

Andrey
17.06.2016
08:24:37
ладно, тогда начнем от противного, а чем плохо связать оригинал и его аналогои через has_many?

Максим
17.06.2016
08:24:46
То есть простейшее has_many/belongs_to

Pretorian
17.06.2016
08:24:51
Да подошло бы, но бывает и 2,3,4 оригинала )

Andrey
17.06.2016
08:25:41
т.е. анолог может быть в списке аналогов у разных оригинальных деталей?

Максим
17.06.2016
08:26:02
Значит так: заводишь абстрактную тип запчасти и в ней has_many запчасти. У них есть .original?

Pretorian
17.06.2016
08:26:06
Ага

Антон
17.06.2016
08:26:10
у одного аналога один оригинал, а одного оригниала много аналогов h_m/b_t?

Andrey
17.06.2016
08:26:39
ну как бы да

Pretorian
17.06.2016
08:26:43
Антон
17.06.2016
08:26:58
в каком месте?

Максим
17.06.2016
08:27:07
А как мой последний вариант?

Антон
17.06.2016
08:27:08
одно поле original_id

Pretorian
17.06.2016
08:27:12
24 гига занимает такая

Антон
17.06.2016
08:27:36
одна таблица, parent_id

Максим
17.06.2016
08:27:43
Сложнее выборки.

Pretorian
17.06.2016
08:27:46
Про 2 таблицы понятно, но как понять что это та группа

Антон
17.06.2016
08:27:59
Pretorian
17.06.2016
08:28:17
Да забейте, хоть 10 таблиц, идею главное

Google
Pretorian
17.06.2016
08:28:51
1,2 и 2,3 как мне связать 1 и 3 если еще нет 2

Антон
17.06.2016
08:28:58
Да забейте, хоть 10 таблиц, идею главное
http://railscasts.com/episodes/163-self-referential-association

Andrey
17.06.2016
08:29:06
можно поглядеть в сторону json в бд, postgres поддерживает, у каждого аналога храним json строку со списком оригалов

Максим
17.06.2016
08:29:22
почему?
Померять надо. Но в MySQL когда последний раз мерял между двумя таблицами было быстрее чуть чем в одной с Parent. Ну и логика модели попроще.

можно поглядеть в сторону json в бд, postgres поддерживает, у каждого аналога храним json строку со списком оригалов
Не стоит. Это задача не для json. Он всё же не такой быстрый. Json там для других целей рулит.

Максим
17.06.2016
08:30:19
Я же сказал, что чуть. :)

Pretorian
17.06.2016
08:30:24
Вот в большущей бд сделано так, у каждого оригинала свои аналоги даже если они оригиналы. У меня сделано что все аналоги с оригиналом имеют связь через один элемент

Антон
17.06.2016
08:30:47
элемент - вода?

Pretorian
17.06.2016
08:30:48
Но проблема в начальном наполнении

элемент - запись

Антон
17.06.2016
08:31:26
аналог - запись оригинал - запись элемент - запись

Pretorian
17.06.2016
08:31:50
Имя детали и к нему разные аналоги

Антон
17.06.2016
08:32:09
при чем тут аттрибут имя?

Максим
17.06.2016
08:32:16
элемент - запись
элемент - вода в данном случае

mardybm
17.06.2016
08:32:40
по твоим словам аналог может одновременно быть еще и оригиналом?

Pretorian
17.06.2016
08:32:41
Имя детали означает просто деталь например руль

Антон
17.06.2016
08:32:53
имя детали - свойство объекта

у нас ООП а не ИОП

Google
Pretorian
17.06.2016
08:33:24
Свойство хранить для каждой детальки то накладно, текстовое

Максим
17.06.2016
08:33:28
имя детали - свойство объекта
Похоже, он про мой вариант говорит, только в другой терминологии.

Или близко к нему

Антон
17.06.2016
08:34:09
ну я не телепат, никто не декларировал что будем обсуждать AR в другой терминологии, в какой?

Pretorian
17.06.2016
08:34:17
Но ладно с этим наименованием, при вводе то как я пойму что именно это наименование, что бы привязаться, по этому и не катит

Антон
17.06.2016
08:34:35
нельзя привязывать объекты по свойству наименования

Максим
17.06.2016
08:34:43
У меня проблемы пока с терминологией AR. Потому и стараюсь писать операторами ))

Pretorian
17.06.2016
08:35:00
Да назовите хоть наименование хоть id хоть uuid

Антон
17.06.2016
08:35:15
id uuid хорошо индексируются

Pretorian
17.06.2016
08:35:29
Ага, только как понят что это он

Admin
ERROR: S client not available

Антон
17.06.2016
08:35:43
кто?

Максим
17.06.2016
08:36:23
Я за 2 таблицы. Тип детали has_many детали, которые различаются только .original? …

Антон
17.06.2016
08:36:56
Максим
17.06.2016
08:36:56
Вся иеархическая и информационная нагрузка больше на первой таблице с меньшим числом элементов.

Pretorian
17.06.2016
08:37:13
Ладно, еще пример 12.4454.1 и 6.7df5.23 и dgfg3354.54_ - это разные детали-аналоги но означают одно, что их ставят в одно и то же место

Антон
17.06.2016
08:37:44
что значит разные детали-аналоги, что значит одно? тоесть они аналоги?

Pretorian
17.06.2016
08:38:14
Скажем это руль и пофиг на все, какая разница из чего он сделан, клиенту пофиг

Антон
17.06.2016
08:38:42
12.4454.1(id: 1, original_id: nil) 6.7df5.23(id: 2, original_id: 1)

Google
Максим
17.06.2016
08:38:51
2 модели для одной сущности - плохо
Тут и три сущности предлагали уже. Если оригиналов и аналогов одной детали может быть несколько. То нельзя никакой оригинал выбрать как parent. Значит мы должны насильно выбрать parent вообще не из номенклатуры.

Pretorian
17.06.2016
08:38:51
Даже сделан один к одному и одним производителям но на разных заводах, уже разный номер

12.4454.1(id: 1, original_id: nil) 6.7df5.23(id: 2, original_id: 1)
Это понятно, как их связать?

Антон
17.06.2016
08:39:26
через original_id

Pretorian
17.06.2016
08:39:46
А если я незнаю оригинала?

Опа, а я ведь ни как не могу незнать оригинала!

Максим
17.06.2016
08:40:06
Вот, говорю же что ещё сущность надо.

Pretorian
17.06.2016
08:40:30
А, блин, клево когда один оригинал, а если 2,3,4?

Антон
17.06.2016
08:40:56
а может быть 2,3,4 оригинала? что за бред

Максим
17.06.2016
08:41:03
Конечно может.

Pretorian
17.06.2016
08:41:08
Может

Антон
17.06.2016
08:41:09
например?

Максим
17.06.2016
08:41:19
Стекло для iPhone от двух производителей: Samsung и LG

И они оригинальные оба

Pretorian
17.06.2016
08:41:30
Скажем один производитель VOLVO но на разных заводах

Антон
17.06.2016
08:41:39
у них один P/N?

Максим
17.06.2016
08:41:52
Различается чуть.

Pretorian
17.06.2016
08:42:10
у деталей нет названий только Р/N

Антон
17.06.2016
08:42:42
тогда нужна служебная таблица analogs_originals

Pretorian
17.06.2016
08:43:01
Кросс это номер + производитель,

Тьфу, Кросс не равно деталь

Антон
17.06.2016
08:43:52
чот я устал это тривиальная задача она есть в скринкастах она есть в документации по AR-relations

Страница 110 из 1684