CRM项目(七)

CRM项目开发(七)

文章目录 

1. 添加–创建页面

  1.1 创建页面路由

  1.2 创建页面模板文件

  1.3 创建页面视图函数

 

 

1. 添加–创建页面

添加功能在前面的编辑基础上继承,相对来说就简单太多,没有太多的修改。

1.1 创建页面路由

 

urlpatterns = [
    url(r'^$', views.index, name='table_index'),
    url(r'^(\w+)/(\w+)/$', views.display_objects, name='display_objects'),
    url(r'^(\w+)/(\w+)/(\d+)/edit/$', views.table_object_edit,name="table_object_edit"),
    url(r'^(\w+)/(\w+)/add/$', views.table_object_add,name="table_object_add"),#添加页面的路由
] 

1.2 创建页面模板文件

  1. templates/king_admin/目录下创建模板文件:table_object_add.html,并继承编辑文件内容:
{% extends 'king_admin/table_object_edit.html' %}

{% block top %}
  <div class="panel-heading">
    <button  class="btn btn-success pull-right" ><a href="{% url 'king_admin:display_objects' app_name table_name %}" style="color: white">返回</a></button>
  </div>
{% endblock %}

上面的块内容包含的是返回键按钮。

1.3 创建页面视图函数

添加功能的视图函数和编辑页面基本上是大同小异:

def table_object_add(request, app_name, table_name):
    admin_class = site.enabled_admins[app_name][table_name]
    model_form = create_model_form(request, admin_class)

    if request.method == 'POST':
        form_object = model_form(request.POST)
        if form_object.is_valid():
            form_object.save()
            return redirect('/king_admin/{app_name}/{table_name}'.format(app_name = app_name,
                                                                         table_name = table_name))
    else:
        form_object = model_form()

    return render(request, 'king_admin/table_object_add.html', {'admin_class': admin_class,
                                                                'form_object': form_object,
                                                                "app_name": app_name,
                                                                "table_name": table_name})

其中的redirect()比较关键,添加后返回的url

posted @ 2017-02-12 15:05  runnering  阅读(114)  评论(0)    收藏  举报