2014-12-03 12 views
3

Я привязываю, чтобы интегрировать таблицы webix с базовой сетью, как показано в документах webix (http://docs.webix.com/desktop__backbone_collections.html), однако это не работает. Выполняется вызов синхронизации объекта, но данные не загружаются.Интеграция таблиц и магистралей webix

budgets = new Backbone.Budget.Collection(window.budget) 
    list = 
     width    : 320 
     view    : "datatable" 
     id     : "budget_list" 
     backbone_collection : budgets 
     select    : true 
     scroll    : false 
     columns    :[ 
       {header : "Month",    id: "budget_month"} 
       {header : "Year",    id: "budget_year"} 
       {header : "Currency",   id: "base_currency"} 
       ] 

     on: { 
       onAfterRender  : () -> 
         console.log("Sync ", @_settings) 
         @sync(@_settings.backbone_collection) 

       } 
+0

Вы можете разместить 'Backbone.Budget.Collection' и структура' window.budget'? –

+0

@ ZacharyK Можете ли вы опубликовать код модели? и где вы устанавливаете URL-адрес службы REST – Deeptechtons

ответ

1

Его очень возможно, что сервер вы ударяете 1) не указывая 'Content-type: application/json' и это отвергается клиента на ответ; и, или 2) не реагирует на предварительные рейсы ОПЦИИ, таким образом, подбрасывает CORS security block. Оба трудно решить без доступа к серверу.

Curl не будет подвержен проблеме CORS, но клиент REST на основе браузера - и, следовательно, лучше всего будет представлять вашу проблему.

Попробуйте использовать Chrome advanced rest client с URL-адресами и заголовками, указанными в пользовательском интерфейсе.

И если вы не знаете URL и заголовок, то sniff your requests при запуске этого интерфейса.

+0

, нет никаких проблем, связанных с выпуском всех на одном и том же сервере, и да, сервер отправляет тип контента (webmachine имеет тенденцию получать HTTP очень корректно) –

2

Вызов .sync из onAfterRender вызывает проблемы, так как синхронизация вызывает повторную визуализацию DataTable, который запускает новую синхронизацию и это вызывает новый повторный рендеринг и т.д.

Чтобы разорвать эту петлю можно использовать webix. один раз, который гарантирует, что обработчик будет выполнен только один раз.

Проверьте обновленный фрагмент http://webix.com/snippet/5dd61a47

 Смежные вопросы

  • Нет связанных вопросов^_^