проблема cfset с добавлением в существующую переменную - PullRequest
2 голосов
/ 01 марта 2011

Я дергаю себя за волосы, работая над тем, что кажется легкой проблемой.Но как новичок в ColdFusion, я просто чертовски разбираюсь в этом.

<cfoutput query="getSeasonAndRate">
    <cfset adultRate = groupRate>
</cfoutput>

Итак ... adultRate = 89

<cfset adultRate = 88>

Так почему adultRate STILL равен 89?

Спасибо!: D

Ответы [ 2 ]

4 голосов
/ 01 марта 2011

Это может быть проблема с областью видимости, попробуйте это:

<cfset variables.adultRate= 0>
<cfoutput query="getSeasonAndRate">
    <cfset variables.adultRate = getSeasonAndRate.groupRate>
</cfoutput>
<cfdump var="#variables.adultRate#">

Также может быть так, что запрос возвращает более одного результата, пытаясь вывести то, что находится в этом запросе, например:

<cfdump var="#getSeasonAndRate#">
1 голос
/ 01 марта 2011

Если ваш запрос содержит столбец с именем "adultRate", то ваш оператор CFSET обновляет объект запроса, а не область переменных.

Эта страница (раскрытие: в моем блоге)обсуждает приоритет области при чтении и записи переменных без явного указания области.

Чтобы исправить вашу проблему, измените:

<cfset adultRate = groupRate>

на:

<cfset variables.adultRate = getSeasonAndRate.groupRate>

(при условии groupRateзначение, из которого вы хотите получить значение, является частью запроса)

...