captive-api 1.2.0 → 1.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e72b812dfba5731acc69f880513c4d445b6cc116ba1414769b7b2a80fe2ff059
4
- data.tar.gz: 54aa16d8fef4481576db2a1b516370425028daeafdfba386ff39d59b76a554b2
3
+ metadata.gz: ab12a1c792bf550f36961f83688c299f75a9d6bc1153ef850aa5448be4283ec0
4
+ data.tar.gz: 72a79ff779a827484909877dc99b678a92315e35cd720b71950b34ffeb454780
5
5
  SHA512:
6
- metadata.gz: c6ce7a15f9fe66265869f616b720d99b8adb4b2a4050db0a8cc86e61f8c8ab44dfa5de70d201a9dbac589b8f399ad909667bf605ac210347b331474253fa728b
7
- data.tar.gz: e901f2a5e2e65a91f4f5602dd8528db230d73af5bc757eeb992c2bd7b2243c3136b56485d0f790656bf1433adb5f9342a50bbfe152c80fd328d1eab6aac65713
6
+ metadata.gz: 78a473ad837f0851c115b3868bf031d70dfec945f643d43348bd8de26fd04a8154e41bf8dd9cc9209cdd61c39807374851f0096da100c6d6e9f76b3b43edae3c
7
+ data.tar.gz: 20e6fd708d8f5fa147588553eaec6b8049e5dae6bd58e614a8da2acb2fc3f60a74228647a9ea89d186de2a74f289de08e735928e5cd3a74513162f1df30f598a
data/README.md CHANGED
@@ -27,6 +27,31 @@ The class `Captive::Api::ApplicationController` includes 2 concerns :
27
27
  | [pagination](https://github.com/Captive-Studio/captive-api/blob/main/app/controllers/concerns/api/pagination_concern.rb) | Logique de pagination pour les index |
28
28
  | [render error](https://github.com/Captive-Studio/captive-api/blob/main/app/controllers/concerns/api/render_error_concern.rb) | Attrape certaines erreurs pour retourner une page d'erreur en json. Permet aussi d'utiliser les méthodes pour rendre des pages d'erreur json manuellement |
29
29
 
30
+ ### PaginationConcern
31
+
32
+ #### `#pagination`
33
+
34
+ You can use the pagination method like this :
35
+
36
+ ```ruby
37
+ @tenues = @tenues.page(pagination[:page])
38
+ .per(pagination[:per_page])
39
+ ```
40
+
41
+ *The method `page` and `per` come from [will_paginate](https://github.com/mislav/will_paginate)*
42
+
43
+ The pagination method return an hash like this :
44
+
45
+ ```ruby
46
+ { page: 1, per_page: 10 }
47
+ ```
48
+
49
+ ⚠️ The first page is `1` and not `0` !
50
+
51
+ ### RenderErrorConcern
52
+
53
+ TODO
54
+
30
55
  ## Installation
31
56
  Add this line to your application's Gemfile:
32
57
 
@@ -15,10 +15,12 @@ module Api
15
15
  DEFAULT_NB_ITEMS_PAR_PAGE = 10
16
16
 
17
17
  def pagination
18
- par_page = (params[:per_page] || DEFAULT_NB_ITEMS_PAR_PAGE).to_i
19
- par_page = MAX_ITEMS_PAR_PAGE if par_page > MAX_ITEMS_PAR_PAGE
20
- page = (params[:page] || 1).to_i
21
- @pagination ||= { page: page, per_page: par_page }
18
+ @pagination ||= begin
19
+ par_page = (params[:per_page] || DEFAULT_NB_ITEMS_PAR_PAGE).to_i
20
+ par_page = MAX_ITEMS_PAR_PAGE if par_page > MAX_ITEMS_PAR_PAGE
21
+ page = (params[:page] || 1).to_i
22
+ { page: page, per_page: par_page }
23
+ end
22
24
  end
23
25
  end
24
26
  end
@@ -1,5 +1,5 @@
1
1
  module Captive
2
2
  module Api
3
- VERSION = "1.2.0".freeze
3
+ VERSION = "1.2.1".freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: captive-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.0
4
+ version: 1.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Captive