Qt: Установить размер QMainWindow

Хорошо. Я знаю, что это не совсем ответ, но, возможно, записка для людей, которые смотрят на это так, как я. Я хотел выполнить конкретный код для разных пользователей / клиентов, но также хотел избежать exec / eval. Сначала я искал сохранение кода в базе данных для каждого пользователя и делал это.

В итоге я создал файлы в файловой системе в папке «customer_filters» и использовал модуль «imp», если ни один фильтр не применяется для этого клиента, он просто переносится на

import imp


def get_customer_module(customerName='default', name='filter'):
    lm = None
    try:
        module_name = customerName+"_"+name;
        m = imp.find_module(module_name, ['customer_filters'])
        lm = imp.load_module(module_name, m[0], m[1], m[2])
    except:
        ''
        #ignore, if no module is found, 
    return lm

m = get_customer_module(customerName, "filter")
if m is not None:
    m.apply_address_filter(myobj)

, поэтому customerName = "jj" выполнит apply_address_filter из файла customer_filters \ jj_filter.py

23
задан Aleksej 1 April 2016 в 15:25
поделиться