私はColdFusionの初心者であり、ループ内から配列に値を追加したいと考えています。私はこのコードを書いていますが、それは私のためには機能しません。coldfusionで< cfloop>の配列値を追加する方法は?
<cfset myArray = arrayNew(1)>
<cfloop query="displayQ" >
<cfquery name="fileListQ" datasource="#REQUEST.datasource#">
select
project_id,
doc_id,
file_name,
file_size,
status,
status_date,
timestamp,
upload_date
from project_documents
where
project_id = "#displayQ.project_id#"
<cfif bitAnd(SESSION.rights,structFind(rightsList,"RIGHTS_ADMIN")) EQ 0
AND bitAnd(SESSION.rights,structFind(rightsList,"RIGHTS_ENOVIS_PS")) EQ 0 >
and status = 3
</cfif>
</cfquery>
<cfloop query="fileListQ">
<tr>
<CFSET myArray=ArrayAppend(myArray,#fileListQ.doc_id#,"true"); />
<td><span class="FAKELINK" onClick="doReport('#fileListQ.file_name#','#fileListQ.doc_id#')">
#fileListQ.file_name#
</span>
</td>
</tr>
</cfloop>
</cfloop>
arrayAppendのドキュメントには、正しく使用する方法の例があります。しかし、配列関数がcfqueryカラムで機能するので、別の変数は必要ないかもしれません。最後に、別のクエリのループ内でクエリを実行することは、ほとんど常に非常に悪い考えです。データソースが同じ場合は、1つのクエリでのみデータを取得する方法を見てください。 –
私はまた、いくつかの記事を読んでドキュメントを読んでいます。リストとして書いて使い方を教えてください。 – vinny
別のクエリでwhere句を使用してvarを使用する – vinny