Я кодирую эту новую функцию для клиента. Мне нужно дать пользователю права на следующее:
- Район
- Операционный центр
- Проекты в этом операционном центре
Вот скриншот моей страницы add_a_user, которая показывает район> Ops Center> макет проекта:
В настоящее время в моей таблице округов есть 8 округов, но только у «1» и «4» есть оперативные центры. Вот почему вы видите только те на этом скриншоте. Таким образом, в каждом районе может быть более одного оперативного центра, и многие проекты связаны с отдельным оперативным центром.
Итак, моя структура таблиц на сервере MS SQL выглядит следующим образом:
У меня также есть 3 другие таблицы, в которых хранятся права пользователей:
Я назвал переключатели динамически следующим образом:
f_district_access_#district_id# (district access)
f_da_#district_id# (district role)
f_ops_#operation_center_id# (ops center access)
f_projects_#getdistricts.project_name_id# (project access)
На моей странице действий я пытаюсь использовать этот cfloop (и я делаю cfloop для ops центров и проекта):
<CFQUERY datasource="#datasource#" name="get_district_count">
SELECT MAX(district_id) AS DC
FROM districts
</CFQUERY>
<cfset DC = get_district_count.DC>
<!-- Insert district access-->
<CFLOOP from="1" to="#DC#" index="dis">
<cfset districtname = "f_district_access_" & dis>
<cfif structKeyExists(form,"#districtname#")>
<cfquery datasource="#datasource#" name="submit_districts">
INSERT into district_access
(
district_access_id,
district_user_nm,
district_role
)
Values(
#form["f_district_access_" & dis]#,
#NEWID#,
#form["f_da_" & dis]#
)
</cfquery>
</cfif>
</CFLOOP>
Теперь я получаю эту ошибку:
Элемент F_DA_4
не определен в объекте Java типа class
coldfusion.filter.FormScope.
Итак, мои вопросы: я слишком усложняю это и как мне это упростить?