Данные Ajax to Python Pyramid - PullRequest
       11

Данные Ajax to Python Pyramid

1 голос
/ 07 июня 2011

До сих пор мне удалось взять кучу элементов HTML, для которых атрибут contentEditable равен True, и объединить их идентификаторы и данные HTML вместе, чтобы создать строку данных Ajax.Я могу получить сериализованные данные обратно на сервер, нет проблем.Например,

$(document).ready(function(){
    $("#save").click(function(){
        var ajax_string = ''
        $( "[contenteditable=True]" ).each(function( intIndex ){
            ajax_string = ajax_string + '&' + $("[contenteditable=True]")[intIndex].id + ':' + $(this).html();
        });
        $.ajax({
            type:"POST",
            url:"/episode_edit/{{ episode.ID_Episode }}",
            data:ajax_string,
            success:function(result){
                <!--alert( ajax_string );-->
                }
        });
    });
});

На сервере:

for r in request.params: print r

Я получаю строки:

AltTitle:some Alt Title
PrintTitle:The Print Title
Notes:A bunch o' notes.

Моя дилемма заключается в том, что мне нужно преобразовать каждый request.param Строка в объект словаря, поэтому я могу сопоставить его с моей моделью базы данных.Я могу придумать несколько очень уродливых способов сделать это, но как лучше?

1 Ответ

0 голосов
/ 07 июня 2011

Вы говорите, что хотите преобразовать каждую строку request.param в объект словаря, но вы это имели в виду?Похоже, что каждая строка является просто парой ключ / значение.

Вы можете просто создать словарь из этих значений, используя:

opts = {}
for r in request.params:
    parts = r.split(':', 1)
    if len(parts) == 2:
        opts[parts[0]] = parts[1]
    else:
        # some error condition
...