coldfusion с использованием cfoutput с переменной в имени переменной

#coldfusion

#coldfusion

Вопрос:

У меня есть несколько файлов, в которых используются одни и те же файлы шаблонов cfm

У меня есть фрагменты содержимого страниц в файле шаблона content.cfm , которые я могу получить с помощью различных имен переменных : content_home content_contact title_home title_contact

Я хотел бы иметь промежуточный файл шаблона, который может вызывать content_#id# и title_#id# на основе предоставленного id .

определяется id с помощью шаблона в home.cfm и contact.cfm

Проблема, с которой я сталкиваюсь, заключается в том, что я не могу ссылаться на переменную, используя переменную как часть имени, например #content_#id##

Комментарии:

1. Честно? Если это не самообразовательный проект, я бы настоятельно рекомендовал избегать изобретения велосипеда и использовать какой-нибудь фреймворк. Возможно, очень просто github.com/seancorfield/fw1

2. возможно, вам захочется изучить использование <cfmodule> , для чего был разработан CF, но это ад, когда дело доходит до его поддержки.

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

4. Перестаньте беспокоиться. Посмотрите на FW / 1 — это не сложно, и там есть активный список рассылки (и здесь), где вы можете обратиться за помощью, если вы застряли. (Сейчас на копирование-вставку может потребоваться меньше времени, но это вернется к вам позже.)

Ответ №1:

Я не совсем понимаю вопрос (или, действительно, что вы задаете вопрос;-)

Однако вы просто спрашиваете, можете ли вы это сделать в parser.cfm:

 <cfinclude template="content_#page#.cfm">
  

?

Ну: да, вы можете. Попробуйте!

Кстати, я согласен с человеком, который предложил вам не изобретать велосипед. Взгляните на FW /1. Он сделает все это (и многое другое) за вас.

Комментарии:

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

2. Также согласен с переосмыслением колеса. Найдите FW/1.

Ответ №2:

Абстрагируясь от цели (использование зрелой структуры очень помогает), вы можете добиться ссылки на динамические переменные, используя структурную нотацию: variables["content_" amp; id] для вашего случая

Комментарии:

1. как восхитительно просто, dakujem! (на заметку — blava 4 life!)