Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 23.06.2013, 14:49
Новичок на форуме
Отправить личное сообщение для pablos2038 Посмотреть профиль Найти все сообщения от pablos2038
 
Регистрация: 23.06.2013
Сообщений: 2

ExtJS hasOne assosiation
Коллеги, помогите копнуть. Есть две модели:

Ext.define('App.model.UserStatus', {
    fields: [ 
          'id', 'name'
    ],
    belongsTo: ['User'],
...

и
Ext.define('App.model.User', {
  fields: [ 
     'id', 'name', 'status_id' 
  ],
// Со справочником статусов
  associations: [
  { 
      type: 'hasOne', 
      model: 'App.model.UserStatus',
            primaryKey: 'id', 
            foreignKey: 'status_id',
            getterName: 'getUserStatus',
            setterName: 'setPoop',
            instanceName: 'UserStatus'
        }
...


данные в MySQL.

В Grid'е пробую получить значение поля из справочника:
{
                    header: 'status',
                    dataIndex: 'status_id',
                    renderer: function (value, meta, record) {
                            return record.getUserStatus().get('name');
                    }
            }

возвращает пустышку. Причем console.log(record) показывает, что в каждой записи User уже есть вложенный объект UserStatus с необходимыми данными, при этом getter getUserStatus выдает совершенно другой объект в котором id имеет правильное значение, а name - пустое.

Еще вопрос, можно ли как-то указывать поля дочерней таблицы в описании полей grid'а ( типа dataIndex: 'UserStatus.name' ) или без render'а никак не обойтись?
Ответить с цитированием
  #2 (permalink)  
Старый 24.06.2013, 17:39
Профессор
Отправить личное сообщение для skrudjmakdak Посмотреть профиль Найти все сообщения от skrudjmakdak
 
Регистрация: 27.04.2012
Сообщений: 1,410

честно говоря, я ext немного знаю, но не до такой степени, чтобы помогать.. поэтому если не то скажу, не обижайтесь))
я что то подобное делал так:
var index = store_user_status.find("id", eval('/^' + id + '$/'));//находим index по id'шнику
return (index == -1) ? '' : store_user_status.getAt(index).get('name');
Ответить с цитированием
  #3 (permalink)  
Старый 24.06.2013, 18:11
Новичок на форуме
Отправить личное сообщение для pablos2038 Посмотреть профиль Найти все сообщения от pablos2038
 
Регистрация: 23.06.2013
Сообщений: 2

Это понятно, это не вопрос, но по большому счету - это костыль, просто хотелось бы работало "из бокса"
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ExtJS developer, full time, telecommute position samuraijack Работа 1 12.03.2013 13:21
ExtJs - Перевод книги "Lerning ExtJs" MaXyC ExtJS 17 22.06.2012 17:41
ExtJS работа с иконками greynemo ExtJS 5 01.11.2011 14:40
[Книги] Learn ExtJS, ExtJS in Action mycoding Учебные материалы 0 23.10.2010 15:07
Москва, ищу JavaScript программиста отлично знающего ExtJS, от 10 USD / час. maximgb Работа 3 03.08.2010 14:34