Skip to content

Instantly share code, notes, and snippets.

class AddFeaturedToAlbums < ActiveRecord::Migration
def change
add_column :albums, :featured, :boolean, default: false
end
end
App.albums.where({ featured: true });
// []
App.Collections.Albums = Backbone.Collection.extend
model: App.Models.Album
url: "/users/2/albums"
featured: ->
@where(featured: true)
App.AlbumsListView = Backbone.View.extend
el: '#featured'
initialize: ->
@listenTo @collection, 'sync', @render
%script
App.userId = "#{params[:user_id]}"
.featured-albums.panel
%ul#featured{ data: { user-id: params[:user_id] } }
App.Collections.Albums = Backbone.Collection.extend
model: App.Models.Album
url: ->
userId = $('#featured').data('user-id')
"/users/#{userId}/albums"
featured: ->
@where(featured: true)
App.AlbumItemView = Backbone.View.extend
tagName: 'li'
template: _.template "<a href='/users/<%= user_id %>/albums/<%= id %>'><%= title %></a>"
render: ->
@$el.html @template @model.attributes
this
# app/controllers/application_controller.rb
class ApplicationController < ActionController::Base
before_filter :vary_headers
private
def vary_headers
response.headers["Vary"]= "Accept"
// application.css.sass
.unfeature
margin-left: 8px
.featured-albums
padding: 10px
width: 50%
events:
'click .unfeature': 'unfeature'