2009-12-19 4 views
0

У меня есть веб-сайт компании со многими офисами по всему миру (около 50 офисов). Компания хочет создать подарок поддавки с сотрудниками в конкретной компании каждый конкретный день.Подключение узлов к нескольким датам

Например:

Office 1: will do the giveaway the days: 1/1/2010, 7/1/2010, 15/1/2010, etc... 
Office 2: the days: 2/1/2010, 9/1/2010, 19/1/2010, etc... 
Office 3: .... 
Office 50: ... 

(дни настройки вручную на определенные офисы, нет необходимости алгоритма здесь)

У меня есть узел за Office, это не будет CCK тип содержимого с деталями каждый офис (место, телефон, электронная почта и т. д.), теперь мне нужно назначить те дни в офисы.

Но моя проблема здесь в том, что мне не нужно создавать события (или, по крайней мере, узловые события), потому что мне не нужно хранить какие-либо данные в событии. Просто нужно сказать: Офис 1? Да, дни 01.01.2010, 7/1/2010 и т. Д.
Ничего другого, просто чтобы узнать даты.

И, если возможно, сделать их доступными для отображения в модуле календаря.

Какое ваше предложение?

ответ

0

Ok Я нашел решение сам, и я хочу поделиться им с вами:

Создано три типа контента:

офиса: с данными офиса
дней: с узел в день (365 * год)
и Giveaway: с двумя полями ссылок на объекты, один для Офис и еще один для День.

(Дни должны заполняться вручную, используя сценарий, который заполняет ближайшие 2 года или около того).

Так что я могу заполнить только тип контента Giveaway, и этого достаточно.

И тогда остались только взгляды.

+0

хорошо, это более обходное решение, верно? Я думаю, этот ответ устарел. Я был бы очень заинтересован в решении, которое можно было бы построить с помощью D7 + – headkit

0

С помощью CCK и модуля даты вы можете создавать поля даты, но если у вас есть много полей, которые вы хотите добавить, это может быть не лучшее решение.

У вас есть два общих способа решения этой проблемы. Либо вам нужно хранить каждую дату. Это можно сделать с помощью поля даты, не уверен, может ли он обрабатывать несколько значений, ссылку на узел или аналогичные. Это несколько неэффективно, но облегчит создание календаря.

Вы также можете написать строку с информацией о дате и позволить php преобразовать ее в даты. Этот маршрут упростит создание и хранение данных, но значительно упростит интеграцию с календарем.

Самым простым/простым решением, вероятно, будет ссылка на узел с модулем даты, в сочетании со сценарием для создания всех узлов. Вместо того, чтобы делать их внутри Drupal.

Вы также можете создать собственный модуль, который хранит эту информацию для вас. Это будет более долгосрочное решение и потребует больше работы для его интеграции с представлениями и модулями даты/календаря.

Есть много способов, чтобы идти об этом, но это действительно зависит от ваших потребностей, навыков и времени

+0

Да, представьте, что вы можете добавить около 200 дат в год. Я думаю, что поле даты CCK не очень хорошо, специально для редактирования. Спасибо –

+0

Такие вещи, как это хорошо включить. 200 дат в офисе в год кажется немного большим, было бы легче зарегистрировать даты, которые тогда не использовались. – googletorp

+0

Звучит неплохо. Если есть возможность подключить/связать узлы между ними, я мог бы создать узел за каждый день (событие) и связать офисы с день-узлами. Но я думаю, что это все еще проблема для административной стороны, в случае необходимости изменения дат. Как насчет того, чтобы создать словарь для каждого года, со всеми днями как условия? –

0

Почему бы не использовать обычный старый текстовое поле CCK с хорошим четким описанием того, что это и как форматировать это с чем-то в разделе справки, чтобы поддержать его?

Используйте текстовую область (несколько строк) и применяйте формат ввода по умолчанию, который преобразует разрывы строк. Мне нравится использовать фильтр с отметкой.

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

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

+0

Да, проблема в том, что клиенту нужен легкий пользовательский интерфейс. И я думаю, что добавление 200 записей в год в несколько полей одной строки приведет к огромной форме с большим количеством полей. Спасибо –

Смежные вопросы