@@ -5,7 +5,6 @@ defmodule GroupherServer.CMS.Helper.Macros do
5
5
import Helper.Utils , only: [ get_config: 2 ]
6
6
7
7
alias GroupherServer . { CMS , Accounts }
8
-
9
8
alias Accounts.Model.User
10
9
11
10
alias CMS.Model . {
@@ -32,7 +31,7 @@ defmodule GroupherServer.CMS.Helper.Macros do
32
31
33
32
add(:post_id, references(:cms_posts, on_delete: :delete_all))
34
33
add(:job_id, references(:cms_jobs, on_delete: :delete_all))
35
- add(:repo_id, references(:cms_jobs , on_delete: :delete_all))
34
+ add(:repo_id, references(:cms_repos , on_delete: :delete_all))
36
35
...
37
36
"""
38
37
defmacro article_belongs_to_fields ( ) do
@@ -41,7 +40,7 @@ defmodule GroupherServer.CMS.Helper.Macros do
41
40
quote do
42
41
belongs_to (
43
42
unquote ( thread ) ,
44
- Module . concat ( CMS.Model , unquote ( thread ) |> to_string |> Recase . to_pascal ( ) ) ,
43
+ Module . concat ( CMS.Model , Recase . to_pascal ( to_string ( unquote ( thread ) ) ) ) ,
45
44
foreign_key: unquote ( :"#{ thread } _id" )
46
45
)
47
46
end
@@ -184,6 +183,7 @@ defmodule GroupherServer.CMS.Helper.Macros do
184
183
"""
185
184
defmacro general_article_fields do
186
185
quote do
186
+ field ( :title , :string )
187
187
belongs_to ( :author , Author )
188
188
189
189
field ( :views , :integer , default: 0 )
@@ -207,37 +207,14 @@ defmodule GroupherServer.CMS.Helper.Macros do
207
207
end
208
208
end
209
209
210
- @ doc """
211
- for GroupherServer.CMS.Model.Community
212
-
213
- # TABLE: "communities_[article]s"
214
- add(:community_id, references(:communities, on_delete: :delete_all), null: false)
215
- add(:[article]_id, references(:cms_[article]s, on_delete: :delete_all), null: false)
216
-
217
- create(unique_index(:communities_[article]s, [:community_id, :[article]_id]))
218
- """
219
- defmacro community_article_fields ( ) do
220
- @ article_threads
221
- |> Enum . map ( fn thread ->
222
- quote do
223
- many_to_many (
224
- unquote ( :"#{ thread } s" ) ,
225
- Module . concat ( CMS.Model , unquote ( thread ) |> to_string |> Recase . to_pascal ( ) ) ,
226
- join_through: unquote ( "communities_#{ to_string ( thread ) } s" ) ,
227
- join_keys: [ community_id: :id ] ++ Keyword . new ( [ { unquote ( :"#{ thread } _id" ) , :id } ] )
228
- )
229
- end
230
- end )
231
- end
232
-
233
210
@ doc """
234
211
for GroupherServer.CMS.[Article]
235
212
236
213
# TABLE: "communities_join_[article]s"
237
214
add(:community_id, references(:communities, on_delete: :delete_all), null: false)
238
215
add(:[article]_id, references(:cms_[article]s, on_delete: :delete_all), null: false)
239
216
240
- create(unique_index(:communities_job_ [article]s, [:community_id, :[article]_id]))
217
+ create(unique_index(:communities_join_ [article]s, [:community_id, :[article]_id]))
241
218
"""
242
219
defmacro article_communities_field ( thread ) do
243
220
quote do
0 commit comments