Что должно “value_from_datadict” метод пользовательского возврата виджета формы?

Из документации lodash третьим аргументом для differenceBy является

[iteratee=_.identity] (Function): итератор вызывается для каждого элемента.

blockquote>

Исходя из этого, вы можете использовать

var current = [
    {
        id: 1
    },
    {
        id: 2
    },
    {
        id: 3
    },
    {
        id: 4
    }
];

и

var next = [
    {
        conversation_id: 1
    },
    {
        conversation_id: 2
    },
    {
        conversation_id: 4
    }
];

, затем

var difference = _.differenceBy(current, next, function(obj) {
    return obj.id || obj.conversation_id;
});

Или сокращать их с помощью функции стрелки:

var difference = _.differenceBy(current, next, (x) => x.id || x.conversation_id) 

5
задан Thom Wiggers 24 November 2013 в 13:31
поделиться

2 ответа

Для value_from_datadict() Вы хотите возвратить значение, которое Вы ожидаете или Ни один. Источник в django/forms/widgets.py обеспечивает некоторые примеры.

Но необходимо смочь создать виджет DatePicker, просто обеспечив a render метод:

DATE_FORMAT = '%m/%d/%y'

class DatePickerWidget(widgets.Widget):
    def render(self, name, value, attrs=None):
        if value is None:
            vstr = ''
        elif hasattr(value, 'strftime'):
            vstr = datetime_safe.new_datetime(value).strftime(DATE_FORMAT)
        else:
            vstr = value
        id = "id_%s" % name
        args = [
            "<input type=\"text\" value=\"%s\" name=\"%s\" id=\"%s\" />" % \
            (vstr, name, id),
            "<script type=\"text/javascript\">$(\"#%s\").datepicker({dateFormat:'mm/dd/y'});</script>" % id
            ]
        return mark_safe("\n".join(args))
5
ответ дан 14 December 2019 в 19:28
поделиться

Источник Django говорит

Учитывая словарь данных и имени этого виджета, возвращает значение этого виджета. Возвраты Ни один, если это не обеспечивается.

Читая код, я вижу, что отдельные виджеты Даты и времени Django являются оба подклассами Входа, подклассами Виджета, который, кажется, работает с простыми строками.

0
ответ дан 14 December 2019 в 19:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: