Я просматриваю запрос и хочу динамически установить имя ключа структуры и его значение. Но я не могу заставить его работать, потому что он неправильно интерпретирует динамическое значение - он думает, что это фактическое имя ключа. Вот что я имею в виду
<cfloop query="rsSettings">
<cfset APPLICATION.Config.Settings[rsSettings.CompanyID] = StructNew()>
<cfset APPLICATION.Config.Settings[rsSettings.CompanyID].#rsSettings.Name#" = rsSettings.SettingValue/>
</cfloop>
Мне нужно, чтобы часть #rsSettings.Name#
была значением имени, хранящимся в этом наборе записей, например. "МаксОрдерс"
Я пытался заключать его в кавычки, вот так <cfset APPLICATION.Config.Settings[rsSettings.CompanyID]."rsSettings.Name" = rsSettings.SettingValue/>
, но это не сработало.
Что я могу сделать, чтобы он принял имя динамического ключа?
[rsSettings.CompanyID]
делает то, что вы хотите, так что свяжите их[rsSettings.CompanyID].[rsSettings.Name]
- person Antony   schedule 14.04.2015[rsSettings.CompanyID].[rsSettings.Name]
? Я думал, что это создает еще одно измерение в структуре - person volume one   schedule 14.04.2015<cfset APPLICATION.Config.Settings[rsSettings.CompanyID][rsSettings.Name]" = rsSettings.SettingValue/>
структуры не имеют размеров, у них есть глубина (я полагаю) (и в моем первом комментарии есть опечатка, . между двумя ключами не должно быть там - person Antony   schedule 14.04.2015APPLICATION.Config.Settings[rsSettings.CompanyID]
. Почему бы вам не следовать тому же синтаксису? - person Scott Stroz   schedule 14.04.2015