10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
|
# File 'lib/blade/setting/model_template.rb', line 10
def model_template(model_class)
model = model_class.name
arg1 = model_class.name.downcase
args = arg1.pluralize
model_columns = model_class.columns.map(&:name)
model_columns_key = model_columns.map(&:to_sym)
belongs_association = []
model_columns.each do |column|
if (column.include?("_id"))
belongs_model = column.split("_id")[0]
begin
if ActiveSupport::Dependencies.constantize(belongs_model.classify).present?
belongs_association.push "belongs_to :#{belongs_model}"
end
rescue => e
next
end
end
end
model_file = "class \#{model} < ApplicationRecord\n\n include BaseModelConcern\n \n \#{render_belongs_to(belongs_association)}\n\n class << self\n\n def create_by_params(params)\n \#{arg1} = nil\n response = Response.rescue do |res|\nuser = params[:user]\ncreate_params = params.require(:create).permit!\n\n# \u9A8C\u8BC1\u5FC5\u586B\u53C2\u6570\nmust_params = params.require(:create).values\n\nres.raise_error(\"\u7F3A\u5C11\u53C2\u6570\") if \#{model}.validate_blank?(must_params)\n\n\#{arg1} = \#{model}.new(create_params)\n\#{arg1}.save!\n end\n return response, \#{arg1}\n end\n\n\n def update_by_params(params)\n \#{arg1}= nil\n response = Response.rescue do |res|\nuser = params[:user]\n\#{arg1}_id = params[:\#{arg1}_id]\nres.raise_error(\"\u7F3A\u5C11\u53C2\u6570\") if \#{arg1}_id.blank?\n update_params = params.require(:update).permit!\n\n\#{arg1} = \#{model}.find(\#{arg1}_id)\n\nres.raise_data_miss_error(\"\#{arg1}\u4E0D\u5B58\u5728\") if \#{arg1}.blank?\n\n\#{arg1}.update_attributes!(update_params)\n end\n return response, \#{arg1}\n end\n\n\n def query_by_params(params)\n \#{args} = nil\n response = Response.rescue do |res|\npage, per, search_param = params[:page] || 1, params[:per], params[:search]\nsearch_param = {} if search_param.blank?\n\#{args} = \#{model}.search_by_params(search_param)\nif per.present?\n \#{args} = \#{args}.page(page).per(per)\nend\n end\n return response, \#{args}\n end\n\n def delete_by_params(params)\n \#{arg1} = nil\n response = Response.rescue do |res|\n\#{arg1}_id = params[:\#{arg1}_id]\nres.raise_error(\"\u53C2\u6570\u7F3A\u5931\") if \#{arg1}_id.blank?\n \#{arg1} = \#{model}.find(\#{arg1}_id)\n res.raise_data_miss_error(\"\#{model}\u4E0D\u5B58\u5728\") if \#{arg1}.blank?\n\#{arg1}.destroy!\n end\n return response\n end\n end\n\nend\n file\n\n return model_file\nend\n"
|