Получить список всех организаций - PullRequest
0 голосов
/ 25 ноября 2018

Я изменяю страницу регистрации пользователя, я надеюсь включить поле для выбора организации.Я поставил комбобокс и мне нравится показывать все организации.Я поставил этот код:

{% set organizations = h.organizations_available('read')  %}
{% for organization in organizations %}
{{ organization.name }}
{% endfor %}

Но показывать список организации, только если пользователь вошел в систему.

При поиске я обнаружил, что его можно изменить с помощью h.get_facet_items_dict ('organization')) но я делаю много изменений и не могу заставить его работать.

Любая помощь очень ценится. Спасибо

1 Ответ

0 голосов
/ 20 декабря 2018

organizations_available возвращает организации, к которым у текущего пользователя есть доступ, на основе параметра permission, который вы передаете.

Но, если это на этапе регистрации пользователя или входа в систему, перед созданием пользователяили вошедшая в систему эта функция может не работать, поскольку там нет текущего пользователя.https://github.com/ckan/ckan/blob/a4ec78e04ab60f8027f4765fa4f8625c2adc5f02/ckan/lib/helpers.py#L1959

'''Return a list of organizations that the current user has the specified
permission for.
'''

Я не могу вспомнить, установлен ли обычный пользователь для current_user до входа в систему. Я думаю, что где-то он устанавливает IP-адрес, возможно, но не уверен, что это на данный момент.

Возможно, вы могли бы создать своего собственного помощника , который вызывает organization_list?Я не думаю, что вы действительно после списка аспектов организации.https://docs.ckan.org/en/2.8/api/#ckan.logic.action.get.organization_list

...