Упрощенный пример:
В Django рассматривают приложение, я хотел список выборки HTML, показывающий зарегистрированным пользователям. Но потому что у нас есть 5 000 зарегистрированных пользователей, мне был нужен способ отфильтровать тот список на основе условий запроса (такой как просто люди, которые завершили определенный семинар). Для элемента обзора, чтобы быть допускающим повторное использование, мне было нужно для человека, создающего вопрос об обзоре быть в состоянии присоединить те критерии к тому вопросу (не хотите к твердому коду запрос в приложение).
решение, которое я предложил, не на 100% удобно для пользователя (требует, чтобы справка от технического человека создала запрос), но это действительно решает проблему. При создании вопроса редактор может ввести словарь в пользовательское поле, например:
{'is_staff':True,'last_name__startswith':'A',}
, Что строка хранится в базе данных. В коде представления это возвращается в как self.question.custom_query
. Значение этого является строкой что взгляды как словарь. Мы возвращаем его в реальный словарь с оценкой () и затем наполняем его в queryset с ** kwargs:
kwargs = eval(self.question.custom_query)
user_list = User.objects.filter(**kwargs).order_by("last_name")
Конечно, в некоторых событиях, таких как DocumentBeforeClose
или WindowSelectionChange
, можно проверять на наличие такого рода вещей, но это может быть чересчур. Вместо этого можно просто использовать поля - они будут обновляться автоматически. Например, перейдите к Вставьте , затем нажмите на Быстрые части , а затем Поле... Перейдите в раздел Информация о документе в раскрывающемся списке слева и выберите Название . Затем вставьте это и вернитесь на главную вкладку ленты и установите ее стиль на Название.
Вы также упоминаете, что вам также нужны заголовки страниц - эти свойства вы устанавливаете в Панели документов?
.В Word нет подобных событий. Лучшее, что вы можете сделать, - это использовать событие изменения выбора, которое будет происходить довольно часто, но тогда вам придется проверить все свойства всех документов.
Думаю, вы пытаетесь сделать то, чего Word обычно не делает. Бывают случаи, когда поля обновляются, и все. Научите пользователей, как это работает.