Показать сообщение отдельно
  #1 (permalink)  
Старый 14.05.2011, 00:25
Новичок на форуме
Отправить личное сообщение для index0h Посмотреть профиль Найти все сообщения от index0h
 
Регистрация: 16.12.2010
Сообщений: 5

nohm в браузере
Столкнулся с такой проблемой: необходимо сделать ORM для localSorage. Так как на сервере используется связка Nohm+Redis, решил сделать эдакий эмулятор Redis под браузер, что даст возможность не переписывать модели лишний раз. Проблема возникла с созданием ссылок между объектами.
Код:
var modelA = nohm.model('a', {
        properties: {
            name: {
                type: 'string'
            }
        }
    });

    var modelB = nohm.model('b', {
        properties: {
            name: {
                type: 'string'
            }
        }
    });

    //
    var a = new modelA();
    a.p({
        name: 'A'
    });
    a.save(function(err){
        if(err)console.log(err)
    });

    //
    var b = new modelB();
    b.p({
        name: 'B'
    });
    b.save(function(err){
        if(err)console.log(err)
    });
    //До этого момента все работает отлично (поиск/удаление/загрузка тоже)
    a.link(b);
В NodeJS данный код добавляет в базу 4 ключа:
":relationKeys:a:1"
":relations:a:justLink:b:1"
":relationKeys:b:1"
":relations:b:justLinkParent:a:1"

В браузере: только ссылку на b в relationChanges, но никаких изменений в базе нет
a.link(b, 'justLink', true);
В результате получаем 1 ключ в базе:
":relationKeys:a:1"
и ошибку Uncaught TypeError: undefined is not a function
Помогите найти проблему, либо альтернативу. Заранее благодарен.
Вложения:
Тип файла: zip nohm_browser.zip (52.3 Кб, 0 просмотров)
Ответить с цитированием