lightrails 0.2.1 → 0.2.2
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 +4 -4
- data/README.md +30 -1
- data/RELEASE_DATE +1 -1
- data/VERSION +1 -1
- metadata +8 -8
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 271ee045b980f0ad9e17e55a2000013e33ee3b144422c1ebb68988ce2b40c2d1
|
4
|
+
data.tar.gz: 34a232078c13956a34d673b0a54746de57d7e4aaa208c995bec51b9b8f08c66c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 80085ab151534560650678157f6294d6eb0dba6b951ae3295853cdd50e7925005e268eb834a77f9d1fa3e12439b1d674b03a1bc315799e1a32b7cf5f7eb520c5
|
7
|
+
data.tar.gz: 44b4c5ae9c80bcc351d875276baeff1a10cb2fc443312036b975947ee05f069b81e7c97014b7fed099514081d10bcc5c7ddfb72bd682e2a0bea2ca4c964bff8e
|
data/README.md
CHANGED
@@ -24,6 +24,10 @@ $ bin/rails generate lightrails:install
|
|
24
24
|
|
25
25
|
Add a simple interface for obtaining multiple data used in a view.
|
26
26
|
|
27
|
+
It uses Facade design pattern and take responsibility for preparing data outside of the controller.
|
28
|
+
|
29
|
+
In the example below, by using `MyPage::IndexFacade` and `MyPage::NotificationsFacade`, Active Record methods will be called outside of the `MyPageController`.
|
30
|
+
|
27
31
|
```ruby
|
28
32
|
class Mypage::IndexFacade < ApplicationFacade
|
29
33
|
attr_reader :current_user
|
@@ -41,6 +45,18 @@ class Mypage::IndexFacade < ApplicationFacade
|
|
41
45
|
end
|
42
46
|
end
|
43
47
|
|
48
|
+
class MyPage::NotificationsFacade < ApplicationFacade
|
49
|
+
attr_reader :current_user
|
50
|
+
|
51
|
+
def initialize(payload)
|
52
|
+
@current_user = payload[:current_user]
|
53
|
+
end
|
54
|
+
|
55
|
+
def messages
|
56
|
+
@messages ||= current_user.messages.order(created_at: :desc).limit(10)
|
57
|
+
end
|
58
|
+
end
|
59
|
+
|
44
60
|
class MypageController < ApplicationController
|
45
61
|
# for using #retrieve method
|
46
62
|
include ActionFacade::Retrieval
|
@@ -50,16 +66,29 @@ class MypageController < ApplicationController
|
|
50
66
|
# assign instance variables
|
51
67
|
retrieve(facade, :active_users, :messages)
|
52
68
|
end
|
69
|
+
|
70
|
+
def messages
|
71
|
+
# You can retrieve data from the guessed facade
|
72
|
+
# MyPageController#notifications => MyPage::NotificationsFacade
|
73
|
+
payload = { current_user: current_user }
|
74
|
+
retrieve_from(payload, :messages)
|
75
|
+
end
|
53
76
|
end
|
54
77
|
```
|
55
78
|
|
56
79
|
```erb
|
57
|
-
<%# in View %>
|
80
|
+
<%# in View (index.html.erb) %>
|
58
81
|
|
59
82
|
<% @active_users.each do |user| %>
|
60
83
|
...
|
61
84
|
<% end %>
|
62
85
|
|
86
|
+
<% @messages.each do |user| %>
|
87
|
+
...
|
88
|
+
<% end %>
|
89
|
+
|
90
|
+
<%# in View (messages.html.erb) %>
|
91
|
+
|
63
92
|
<% @messages.each do |user| %>
|
64
93
|
...
|
65
94
|
<% end %>
|
data/RELEASE_DATE
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2020-03-
|
1
|
+
2020-03-08
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.2.
|
1
|
+
0.2.2
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: lightrails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ryo Hashimoto
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-03-
|
11
|
+
date: 2020-03-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: railties
|
@@ -36,42 +36,42 @@ dependencies:
|
|
36
36
|
requirements:
|
37
37
|
- - '='
|
38
38
|
- !ruby/object:Gem::Version
|
39
|
-
version: 0.2.
|
39
|
+
version: 0.2.2
|
40
40
|
type: :runtime
|
41
41
|
prerelease: false
|
42
42
|
version_requirements: !ruby/object:Gem::Requirement
|
43
43
|
requirements:
|
44
44
|
- - '='
|
45
45
|
- !ruby/object:Gem::Version
|
46
|
-
version: 0.2.
|
46
|
+
version: 0.2.2
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: actioninteractor
|
49
49
|
requirement: !ruby/object:Gem::Requirement
|
50
50
|
requirements:
|
51
51
|
- - '='
|
52
52
|
- !ruby/object:Gem::Version
|
53
|
-
version: 0.2.
|
53
|
+
version: 0.2.2
|
54
54
|
type: :runtime
|
55
55
|
prerelease: false
|
56
56
|
version_requirements: !ruby/object:Gem::Requirement
|
57
57
|
requirements:
|
58
58
|
- - '='
|
59
59
|
- !ruby/object:Gem::Version
|
60
|
-
version: 0.2.
|
60
|
+
version: 0.2.2
|
61
61
|
- !ruby/object:Gem::Dependency
|
62
62
|
name: activerepresenter
|
63
63
|
requirement: !ruby/object:Gem::Requirement
|
64
64
|
requirements:
|
65
65
|
- - '='
|
66
66
|
- !ruby/object:Gem::Version
|
67
|
-
version: 0.2.
|
67
|
+
version: 0.2.2
|
68
68
|
type: :runtime
|
69
69
|
prerelease: false
|
70
70
|
version_requirements: !ruby/object:Gem::Requirement
|
71
71
|
requirements:
|
72
72
|
- - '='
|
73
73
|
- !ruby/object:Gem::Version
|
74
|
-
version: 0.2.
|
74
|
+
version: 0.2.2
|
75
75
|
- !ruby/object:Gem::Dependency
|
76
76
|
name: bundler
|
77
77
|
requirement: !ruby/object:Gem::Requirement
|