нокаут привязать объект значения ключа к раскрывающемуся

У меня есть следующие модели:

var allCategories = [{
    id: 1,
    name: 'Red'},
{
    id: 5,
    name: 'Blue'}];

function model() {
    self = this;
    self.name = ko.observable("");
    self.categoryId = ko.observable(-1);
    self.categoryName = ko.computed(function() {
        if (self.categoryId() == -1) return "";
        return getCategoryNameById(self.categoryId()).name;
    });
}

function getCategoryNameById(id) {
    return _.find(allCategories, function(cat) {
        return cat.id == id;
    });
}

Я хочу предложить выпадающий список, чтобы выбрать категорию, но я понятия не имею, как это связать. Может я'Я использовал неправильный подход с моими моделями, но этоСкорее всего, как я получаю свои данные с сервера, поэтому яЯ пытался обернуть вокруг меня мою JS.

Я попробовал что-то вроде этого:


Но я неНе понимаю, как связать раскрывающееся значение с моделью.categoryId

Вотскрипка с рабочей привязкой для свойства name.

Ответы на вопрос(2)

Ваш ответ на вопрос