paginate list history
This commit is contained in:
+11
-2
@@ -1,5 +1,6 @@
|
||||
class List
|
||||
include SimplyStored::Couch
|
||||
per_page_method :limit_value #kaminari
|
||||
|
||||
property :state, default: 'active' # active, #closed
|
||||
property :needs_help, type: :boolean, default: false
|
||||
@@ -24,6 +25,14 @@ class List
|
||||
}
|
||||
}|, reduce_function: '_sum'
|
||||
|
||||
view :for_user_view, type: :custom, map_function: %|function(doc){
|
||||
if(doc.ruby_class == 'List' && doc.user_ids && doc.user_ids.length){
|
||||
doc.user_ids.forEach(function(uid){
|
||||
emit([uid, doc.created_at], 1);
|
||||
})
|
||||
}
|
||||
}|, reduce_function: '_sum'
|
||||
|
||||
# Create, a list given a table and a user
|
||||
def self.from_table table, user
|
||||
return if user.has_active_list?
|
||||
@@ -35,9 +44,9 @@ class List
|
||||
list
|
||||
end
|
||||
|
||||
def self.of_user(user, options = {})
|
||||
def self.for_user(user, options = {})
|
||||
with_pagination_options(options) do |options|
|
||||
database.view(association_list_has_and_belongs_to_many_users({startkey: [user.id], endkey: ["#{user.id}\u9999"], include_docs: true, reduce: false}.merge(options)))
|
||||
database.view(for_user_view({startkey: ["#{user.id}\u9999"], endkey: [user.id], include_docs: true, reduce: false, descending: true}.merge(options)))
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user