Как вставить ссылку с помощью кода Wix? - PullRequest
0 голосов
/ 15 октября 2018

Позвольте мне начать с того, что я полностью сбит с толку.Итак, у меня есть 2 коллекции - CCDB и IDB CCDB имеет первичный ключ Champion ID (ключ поля: champId, type: text) IDB имеет первичный ключ DeviceName (поле: title, type: text) и ссылочное поле Champion ID (ключ поля: champId, тип: ссылка).Итак, n элементов в коллекции IDB принадлежат 1 элементу в коллекции CCDB.

Теперь, когда я вставляю данные в коллекцию IDB, используя следующий код, приведенный ниже, в базе данных отображается красное подчеркивание: «Тип значения ячейкиэто номер. Изменить на ссылку. "

** ниже - код wix

getitems("pc").then(res => {
let toInsert = {
 "title":  res[i].champion_id, //reference to CCDB
 "description": res[i].Description, 
 "deviceName": res[i].DeviceName,
 "itemId": res[i].ItemId 
} 
wixData.insert("IDB", toInsert)
  .then(results => {
    let item = results;
    console.log(item);
 })
.catch(err => {
 let errorMsg = err;
 console.log(errorMsg);
  });
})

В коллекции IDB после операции вставки

CCDB держит правильный champId

"title":  (res[i].champion_id).toString(),

Я также пытался использовать toString здесь, но затем коллекция показывает ошибку: «ссылка не работает».

Я искал документацию и обнаружил wixData.insertReference () ..но я не уверен, как использовать метод в этом сценарии или даже если это возможно использовать.И поскольку количество элементов в IDB будет больше 100, я не могу вставить ссылку вручную.Как я могу решить это с помощью кода?Спасибо.

1 Ответ

0 голосов
/ 16 октября 2018

Что-то не похоже между вашим описанием, кодом и скриншотами.

У вас правильная идея: вам следует использовать идентификатор из коллекции CCBD в справочном полеколлекция IDB, но, похоже, вы не сделали это правильно.

Из вашего описания может показаться, что вам нужно что-то вроде этого:

let toInsert = {
 "title":  res[i].DeviceName,
 "description": res[i].Description, 
 "champId": res[i].champId, // this is the reference field, not title
 "itemId": res[i].ItemId 
} 

Но, как я уже сказал,Ваше описание не соответствует тому, что, по-видимому, показывает ваш код и снимки экрана, поэтому трудно точно сказать, что происходит.

...