前端文件框架制定
models文件夹源文件名 | models文件夹现文件名 |
---|---|
models/canvas.html【原项目来的】 | models/create_models.html 创建模型,这个应该是最麻烦的 |
models/shop.html【模板来的】 models/models.html【原项目来的】 | models/manage_models.html 最后需要整合成为这一个html,罗列所有的模型,类似商品列表,点击一个商品列表可以进入models_detail.html页面 |
models/single-product.html【模板来的】 | models/models_detail.html 展示特定模型的信息,但是不提供修改,提供修改按钮,修改按钮重定向到另一个页面,然后将模型加载到画布上,但是这里要注意,我们每个模型都有一个单独的主键id,这个id也要加载过去,存数据库的时候要注意。这块我不确定能不能这么做,可能工作量有点大,4.17讨论一下。 |
models/show_code.html【原项目来的】 | models/show_code.html 展示生成的代码,可以从models_detail.html来 |
feedback文件夹原文件名 | feedback文件夹现文件名 |
---|---|
feedback/contact.html【模板来的】 feedback/contact_us.html【原项目来的】 feedback/about.html【模板来的】 | feedback/about.html 三个文件合并,都是死的文字,不必写成三个文件 |
feedback/feedback.html【原项目来的】 feedback/question.html【原项目来的】 | feedback/feedback.html 两个文件合并,我们并不打算后期一直维护,所以此处只需要做成一个向后台发送数据的即可,后台用一个表接着就行了 |
user文件夹原文件名 | user文件夹现文件名 |
---|---|
user/my-account.html【模板来的】 | user/modify_info.html 主要提供修改密码的功能,也可以提供修改其他信息的功能。 |
user/login.html【模板来的】 | user/login.html 提供登录功能 |
user/register.html【模板来的】 | user/register.html 提供注册功能 |
其实这个模块我还没想好,也可以做成模态框的那种,就是弹出来一个框框登陆,不过即使做成页面的好处就是可以及时反馈信息,比如密码错误,用户名错误之类的,我觉得都可以到时候我们讨论吧。
font文件夹下的其他页面 | 提供功能 |
---|---|
index.html【模板来的】 statistics.html【原项目来的】 | index.html 主页,除注册登陆之外唯一一个可以直接访问的页面,上面罗列一些模型展示配上一些图,这些可以像一些经典模型一样直接写死。 同时,这个页面也提供用户的检测,就是不单独写用户访问量了,可以直接写到主页面去,因为我觉得这么写比较好看。 |
help.html【原项目来的】 | help.html 帮助文档,这种页面我没见过,看起来不太好惹,看看怎么移植吧。 |
以上右侧的现文件就是我预估的,咱们前端模块所需要完成的所有页面。看起来工作量好像还不小,这里面还牵扯到后端数据库存储的问题,可能还需要讨论一下怎么弄。这个下面是我初步设计的表,也就是后台的models。
我找到了目前前后端的接口设计
function get_network() {
var conn_list;
var nets_conn = [];
var nets = {};
$("#canvas").find(".node").each(function (index, element) {
var id = $(element).attr('id');
nets[id] = {
"name": $(element).attr('name'),
"attribute": eval('(' + window.sessionStorage.getItem(id) + ')'),
"left": $(element).css('left'),
"top": $(element).css('top')
}
});
conn_list = jsPlumb.getAllConnections();
console.log(conn_list);
for (var i = 0; i < conn_list.length; i++) {
var source_id = conn_list[i]["sourceId"];
var target_id = conn_list[i]["targetId"];
var conn = {
"source": {
"id": source_id,
"anchor_position": conn_list[i]["endpoints"][0]["anchor"]["type"]
},
"target": {
"id": target_id,
"anchor_position": conn_list[i]["endpoints"][1]["anchor"]["type"]
}
};
nets_conn.push(conn);
}
var epoch = $("#epoch").val();
if (epoch == "") {
epoch = "1";
}
var learning_rate = $("#learning_rate").val();
if (learning_rate == "") {
learning_rate = "0.5";
}
var batch_size = $("#batch_size").val();
if (batch_size == "") {
batch_size = "1";
}
var static = {
"epoch": epoch,
"optimizer": $("#optimzier").find("option:selected").val(),
"learning_rate": learning_rate,
"batch_size": batch_size
};
var data = {
"name": $("#model_name").val(),
"structure": {
"nets": nets,
"nets_conn": nets_conn,
"static": static
}
};
return data;
}
我们只需要向后端传这么个json就可以了,至于他们怎么处理,我们不用管,我们最核心的部分就是实现这个json数据,想方设法弄出点花来。