diff --git a/.gitignore b/.gitignore index 179bb33..09da556 100644 --- a/.gitignore +++ b/.gitignore @@ -10,4 +10,4 @@ inventory/static/uploads/* alembic.ini alembic/ *.egg-info/ -test-app/ \ No newline at end of file +test_app/ \ No newline at end of file diff --git a/crudkit/api/flask_api.py b/crudkit/api/flask_api.py index 94e7d3f..611c8c0 100644 --- a/crudkit/api/flask_api.py +++ b/crudkit/api/flask_api.py @@ -27,3 +27,5 @@ def generate_crud_blueprint(model, service): def delete_item(id): service.delete(id) return '', 204 + + return bp diff --git a/crudkit/ui/fragments.py b/crudkit/ui/fragments.py index db169d0..9ac9166 100644 --- a/crudkit/ui/fragments.py +++ b/crudkit/ui/fragments.py @@ -11,3 +11,16 @@ def render_field(field_name, value): def render_table(objects): template = env.get_template('table.html') return template.render(objects=objects) + +def render_form(model_cls, values): + template = env.get_template('form.html') + fields = [] + for col in model_cls.__table__.columns: + if col.name == 'id': + continue + if col.default or col.server_default or col.onupdate: + continue + if col.name in ('created_at', 'updated_at'): + continue + fields.append(col) + return template.render(fields=fields, values=values, render_field=render_field) diff --git a/crudkit/ui/templates/form.html b/crudkit/ui/templates/form.html new file mode 100644 index 0000000..09ad44c --- /dev/null +++ b/crudkit/ui/templates/form.html @@ -0,0 +1,6 @@ +
diff --git a/crudkit/ui/templates/table.html b/crudkit/ui/templates/table.html index 8abd5e0..5b65d61 100644 --- a/crudkit/ui/templates/table.html +++ b/crudkit/ui/templates/table.html @@ -3,6 +3,6 @@ {% for field in objects[0].__table__.columns %}