lightrails 0.2.1 → 0.2.2
Sign up to get free protection for your applications and to get access to all the features.
- 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
|