Получить элемент из Backbone с идентификатором в URL (независимо от коллекции / модели)

Я ищу, чтобы получить конкретную часть данных из Backbone (я использую адаптер localStorage, а не сервер). Я могу увидеть идентификатор предметов, посмотрев на инспектора.

Мне нужен способ щелкнуть любой элемент в любом представлении, независимо от того, в какой коллекции он находится, или это собственная модель, или что-то еще, и передать его в шаблон сведений.

Так, <span onclick="router.navigate('details/:id', {trigger: true});">Single Page</span> будет прикреплен в определенных местах по всему приложению. Все элементы будут создавать URL с собственным идентификатором.

Можно ли агностически визуализировать шаблон с данными из этой единственной модели?

Мой роутер:

    assetDetail: function () {

        var assetId = router.current().params[0];

        var assetModel = new app.Models.Show({
            id: assetId
        });

        var assetDetailView = new app.Views.assetDetail({
            model: assetModel
        });

    },

Тем не менее, когда я ставлю console.log( this.model ); в моей странице подробно render Функция данные в правильном формате, но все равно нулю (модель по умолчанию).

Спасибо за любую помощь.

Обновить:

Пока я знаю точную коллекцию, я могу сделать следующее. Я сейчас переписываю свое приложение, чтобы быть таким. Тем не менее, было бы здорово узнать, можете ли вы сделать это, не зная коллекции (просто имея идентификатор)

        var assetId = router.current().params[0];

        var collection = new app.Collections.Collection({});
        collection.fetch();

        var themodel = collection.get(assetId);

        var assetDetailView = new app.Views.assetDetail({
            model: themodel
        });

0 ответов

Другие вопросы по тегам