WIX.com Первичный ключ, который будет использоваться в качестве ссылки - PullRequest
0 голосов
/ 11 октября 2018

Я новичок в платформе веб-разработки WIX.

Мне нужно использовать первичный ключ таблицы 1, чтобы использовать его в качестве ссылки на таблицу 2, но я не могу использовать идентификатор таблицы 1 для этой цели.

Интересно, лучше ли "скопировать" этот идентификатор в поле Заголовок (первичный ключ) этой таблицы 1. Как мне это сделать?Это лучший метод?

Спасибо, Артуро

1 Ответ

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

Артуро:

Вы пытались сделать это без использования кода wix?Прочтите этот пост , чтобы узнать, возможно ли это.

Теперь в коде единственный способ добавить поле ссылки из другой коллекции данных - это использовать идентификатор.Но обратите внимание, что ID - это имя поля, которое используется в сборе данных для панели мониторинга и представления редактора.При доступе к значению идентификатора в коде вам необходимо использовать ключ поля, который _id .

Так что в вашей таблице 2 вам нужен столбец (поле), который имеетвведите ссылку и присвойте ей имя поля, например «Таблица1».Редактор сгенерирует для вас ключ поля, который будет выглядеть следующим образом: table1Reference .

Теперь, если у вас есть запись из Table1, которую вы хотите связать с Table2, вы делаете что-то вроде этого:

wixData.query('Table1')
.eq('title', 'uniqueTitle')
.find()
.then((results) => {
    if (results.totalCount !== 1) {
        throw Error('We didn't get a record from Table1');
    }
    // Success add this in a new record in Table2
    let table1Item = results.items[0];
    let table2Data = {
        table1Reference:table1Item._id,
        anotherTable2Field:"Some info for table2"
    };
    return wixData.save('Table2', table2Data)
    .then((savedRecord) => {
        // Successful save!
        // Do something here....
    });
})
.catch((error) => {
    console.log(error);
});

Удачи!Стив

...