Code Duplication    Length = 23-24 lines in 2 locations

crudbuilder/views.py 2 locations

@@ 106-129 (lines=24) @@
103
        self.classes[name] = list_class
104
        return list_class
105
106
    def generate_create_view(self):
107
        """Generate class based view for CreateView"""
108
109
        name = model_class_form(self.model + 'CreateView')
110
        create_args = dict(
111
            form_class=self.get_actual_form('create'),
112
            model=self.get_model_class,
113
            template_name=self.get_template('create'),
114
            permissions=self.view_permission('create'),
115
            permission_required=self.check_permission_required,
116
            login_required=self.check_login_required,
117
            inlineformset=self.inlineformset,
118
            success_url=reverse_lazy('{}-{}-list'.format(self.app, self.model)),
119
            custom_form=self.createupdate_forms or self.custom_modelform
120
        )
121
122
        create_class = type(
123
            name,
124
            (self.get_createupdate_mixin(), CreateView),
125
            create_args
126
        )
127
128
        self.classes[name] = create_class
129
        return create_class
130
131
    def generate_detail_view(self):
132
        """Generate class based view for DetailView"""
@@ 148-170 (lines=23) @@
145
        self.classes[name] = detail_class
146
        return detail_class
147
148
    def generate_update_view(self):
149
        """Generate class based view for UpdateView"""
150
151
        name = model_class_form(self.model + 'UpdateView')
152
        update_args = dict(
153
            form_class=self.get_actual_form('update'),
154
            model=self.get_model_class,
155
            template_name=self.get_template('update'),
156
            permissions=self.view_permission('update'),
157
            permission_required=self.check_permission_required,
158
            login_required=self.check_login_required,
159
            inlineformset=self.inlineformset,
160
            custom_form=self.createupdate_forms or self.custom_modelform,
161
            success_url=reverse_lazy('{}-{}-list'.format(self.app, self.model))
162
        )
163
164
        update_class = type(
165
            name,
166
            (self.get_createupdate_mixin(), UpdateView),
167
            update_args
168
        )
169
        self.classes[name] = update_class
170
        return update_class
171
172
    def generate_delete_view(self):
173
        """Generate class based view for DeleteView"""