         return ret
 
     # Set data and update collection
-    setData: (id, val) =>
+    setData: (key, val, key2, val2) =>
         if val
-            @data[id] = val
-        else
-            delete @data[id]
+            @data[key] = val
+        else if key
+            delete @data[key]
+        if val2
+            @data[key2] = val2
+        else if key2
+            delete @data[key2]
         if @router
-            @updateUrl id, val
+            @updateUrl()
         @update()
 
     # Creates a filter from a filter config definition

            status:
                type: "option"
                options: ["all", "valid", "invalid"]

###
class Backbone.TableView extends Backbone.View
    tagName: "div"
    titleTemplate: _.template "<h2><%= model %></h2>"
    searchTemplate: _.template """
        <input type="text" class="search-query pull-right" placeholder="<%= model.detail || model %>"></input>
    """
    paginationTemplate: _.template """
        <ul class="pager">
            <li class="pager-prev">
                <a href="javascript:void(0)">&larr; Prev</a>
            </li>
            <span class="badge badge-info page">1</span>
            <li class="pager-next">
                <a href="javascript:void(0)">Next &rarr;</a>
            </li>

        for key, val of @options
            if key != "el" and key != "collection"
                this[key] = val or this[key]
        @data = $.extend({}, @initialData, @parseQueryString Backbone.history.fragment)
        @data.page = parseInt(@data.page) or 1
        @data.size = parseInt(@data.size) or 10
        return @

    # Navigate to url with all the parameters in data in the querystring
    updateUrl: =>
        uri = Backbone.history.fragment
        if (i = uri.indexOf("?")) > 0
            uri = uri.substring(0, i)
        first = true
        for key, val of @data
            if first
                first = false
                separator = "?"
            else
                separator = "&"
            uri = uri + separator + key + "=" + val
        @router.navigate(uri)

    # Return a parsed querystring with the "?" (eg. query = "/users?hi=1&bye=hello")
    # returns {hi: "1", bye: "hello"}
    parseQueryString: (uri) ->
        ret = {}
        if (i = uri.indexOf("?")) >= 0
            uri    = uri.substring(i + 1)
