Дано.
Тип материала - песни.
Таксномия - Словари:
Вид (изданное, неизданное)
Тип (оригинал, ремикс, бутлег)
Группа (группа 1, группа 2, группа 3)
Альбом (альбом 1, альбом 2, альбом 3)
как связать эти все так что бы...
при создании песни, какая надо уходила в дискографию (вьюхи) нужной группы. причем что бы лишняя информация касающаяся других групп не вылезала при выборе терминов
т.е. я хочу создать песню группы 1 для альбома 2. Песня издана уже и она есть - оригинал.
хотелось бы выполнить следующие действия при создании ноды типа песня.
Выбрать группу (из выпадающего меню выбираем - группа 1), выбрать вид песни (из выпадающего меню выбираем - изданное).
Далее хотелось бы что бы тип песни включал только те термины которые относятся к изданному виду.
Ну выбираем альбом (который уже отфильтровался по выбранной группе и имеет список альбомов только этой группы, без замеса остального).
Реально ли и на что обратить внимание ?
Комментарии
Реально, заодно и поиском пользоваться научишься
Так что вбивать то. поиск на эту тему год ничего не выдает... как связать... термины одного словаря с фильтрацией в терминов во втором словаре.
Я что-то не понял у тебя что у разных групп могут быть одинаковые альбомы???
С какого перепугу у тебя альбом и группы это разные словари??? Я понимаю еще Вид и Тип.
Ты сначала на бумажке нарисуй себе схему и подумай как это должно выглядеть, написать пост много ума не надо. Как ты связь будешь строить при разных словарях между группой и альбомом?
Так все нарисовано.
Ну название то может быть одинаковое, например - НЕИЗДАННОЕ.
что-то закопался я в таксономии, и вьюхах...
решил с др боку подойти (так еще не пробовал).
я подумал тут, если создать материал - альбом. ему назначить термин - название группы (группа 1).
возможно ли при выборе из этого же словаря этот же термин (группа 1), что бы ниже в выпадающем меню сформировались все альбомы, которые привязаны к этому же термину.
Что-то на колдовал во вьюхе, которая и будет делать выборку... но чую что то в аргументах не то на выбирал.
в этом и вопрос как связать группу из списка групп с её альбома из списка всех альбомов.
название альбомов и песни - всяко должно быть материалами. как то фильтрацию нужно сделать видима по общим терминам. т.е. общий термин будет название группы.
Создал тип материалов - альбом и песня.
создал вьюху которая фильтрует по типу материала альбом.
добавил в тип материала альбом и песня - поле Категория материала - и выбрал Словарь с артистами. Также в материала песня создал еще поле ссылка на материал, где прописал имя вьюхи, которая фильтрует.
Не получается отфильтровать список альбомов по выбранной в поле - группе.
что не так делаю?
Нафига, ну вот нафига пихать таксономию во все щели?
Она тут вообще не тему!
Вид (изданное, неизданное) -- CCK поле, селект
Тип (оригинал, ремикс, бутлег) -- CCK поле, селект
Группа (группа 1, группа 2, группа 3) -- тип материала
Альбом (альбом 1, альбом 2, альбом 3) -- тип материала, связь с группой по node_reference
Пестня -- тип материала, связь с альбомом (или с альбомами) по node_reference
Неудобство данной структуры в выводе песен определённой группы или отображение группы в песне, т.к. надо прыгать через одну связку. Но это легко решается автоматически формируемой связью песня→группа (по nodeapi, например).
Ещё раз, почему не таксономия.
А то в ней грани почти стёрты между нодой и термином.
1. Малое количество свойств в случае "Вида" и "Типа". К тому же вряд ли что-то ещё будет неизданным (неизданная группа - звучит хорошо).
2. Необходимость иметь ноду для группы и альбома. Она рано или поздно возникнет. Конечно, можно нагородить и на таксономии, но это будет неудобно.
3. Я бы посоветовал 7-ку использовать. Но думаю ты не потянешь её
Ночью сегодня думал о типе материала - группа.
Хозяин-барин. Я тебе рассказал о своём взгляде.
Dan, все верно говорите. Я даже и не думал до вчерашнего момента в эту сторону что бы еще один материал ввести, с этим даже проще будет в других местах сайта.
в этой схеме опять в ступоре. мне не нравится, что при создании песни, выборка идет из всех альбомов. а не из конкретной группы.
а создавать для каждой группы свой тип материала - песни + вьюху подцепить с только альбомами это группы, как-то не удобно.
Я то, по такой же схеме делал, только вместо групп - тип материала, была таксономия либо текстовое поле в сск (селект).
Это я к тому что, если будет допустим 100 групп и у них по 20 альбомов, то выбирать придется из 2000 позиций в селекте...
-
Я эту проблему решал двумя способами:
1. Создаём группу. На странице группы есть ссылка "Добавить альбом" (типа node/add/album/123, где 123 - nid группы, модуль node_reference_url). Нажимаем на ссылку - переходим на страницу создания альбома (выбирать группу не надо - уже выбрано). На странице альбома есть ссылка - "Добавить песню", всё аналогично. После сохранения песни, автоматически создаётся связь песня-группа.
2. При создании ноды песни есть два селекта - группы и альбомы. Второй заполняется аяксом при изменении первого.
В идеале надо реализовать оба
С первым пока путано, но разберусь. второе - видимо аякс надо как то подключать или что-то еще...
кончено второе более удобнее.
1 способ кончено понятный... у каждой группы своя ссылка на создание альбома. Но тогда нужно заходить как вы пишите Den в созданную группу или делать страничку/меню с ссылками на создание различных альбомов для каждой группы...
В первом способе ничего делать не надо, ссылки создаются автоматически, если поставить галочку в виджете node_referenceurl.
Второй способ - аякс - ручками. Хотя есть модуль который это может сделать, но чёт он замороченный какой-то.
И все таки 1 вариант Дена это не то, не подходит...
причины
1. при сформированном альбоме - ссылка добавить песню - ну очень не нужна
2. песни не перекидываются в такой системе с альбома в альбом (а вдруг надо?)
3. не добавить одну и туже песню в разные альбомы (и такое бывает, сборники или концертные альбомы)
ну и другие мелкие.
как же человеческую систему группа - альбом - песня сделать...
1. Не вижу проблемы, но видимо она есть
2. Вроде было в настройках.
3. Да, этого нет.
Не охота марать руки кодом?
Имхо проще написать пару десятков строк кода, чем установить с десяток модулей. Но - каждому своё.
был бы программером всяко написал бы.
я бы эти пару десятков строк приобрел бы.