小编dia*_*ond的帖子

上传前使用javascript重命名文件

假设我有这样的表格列表:

var forms = document.getElementsByClassName('uploadImage');

此列表中的每个项目如下所示:

<form method=?"post" action=?"/?upload" enctype=?"multipart/?form-data" id=?"f_x" class=?"uploadImage">

?    <input type=?"file" id=?"u_x">?
    <input type=?"submit" value=?"Submit" id=?"s_x">?

</form>?
Run Code Online (Sandbox Code Playgroud)

在哪里 x = [0,1,2,3,4,5]

我如何遍历这个列表并做两件事:

1 - 重命名文件名

2 - 提交上传文件的表格

我在网上找了很多这样的资源:https : //www.telerik.com/forums/change-file's-name-when-it's-uploaded-via-html-form,他们都在使用Jquery,我需要它在JavaScript 中

更新:-

我想出了如何获得每个表单的输入值

forms[0].elements[0] 这将返回列表中第一个表单的第一个输入

forms[0].elements[0].value 此输出文件输入的值

javascript

9
推荐指数
1
解决办法
2万
查看次数

pandas to_json 将日期格式更改为“纪元时间”

每当我将 dataFrame 转换为_json 时,任何日期格式都会更改为“纪元时间

[{"idNo":1234567891012,"Name":"Jack","genderType":"male","Date":1544572800000,"branchName":"NY","location":"loc1","pCode":123}] 原来的日期是 Date:2018-12-12

我的Python代码

@app.route("/fileviewer/" , methods=["GET" , "POST"])
def fileviewer(name):
dest = (file_destination)
df = pd.read_excel(dest)
print(df)
x1=df.to_json(orient ='records')
print(x1)
render_template('fileviewer.html',x=df.to_html())
return render_template('fileviewer.html',x=x1)
Run Code Online (Sandbox Code Playgroud)

df打印精细

x1打印“纪元时间”

python flask pandas

7
推荐指数
1
解决办法
5459
查看次数

制表器 (4.1) 替换新的列值/格式化程序

我在Tabulator 中添加了一个具有此列定义 的新列

table.addColumn({title:"idCopy", field: "idCopy" ,sortable:false, formatter:uploadID,width:100, align:"center",cellClick:function(e, cell){
  function selected(){
    var fileName = formInput.value;
    cell.getRow().getData().idCopy = fileName;

  }
var f = document.createElement("form");
var formInput = document.createElement('input');
formInput.onclick = "selected(cell,f,formInput)" ;
var s = document.createElement("input");
s.setAttribute('type',"submit");
f.appendChild(formInput);
f.appendChild(s);
f.onClick = formInput.click();
}}, false);
Run Code Online (Sandbox Code Playgroud)

我添加了更多行来定义每个表单,其 ID 与此类似,f.id = "f_" + cell.getRow().getData().id ;因此每个表单都是唯一的,uploadID功能如下所示

  var uploadID = function(cell, formatterParams, onRendered){ 

return "<i class='fa fa-print'>upload ID</i>";
Run Code Online (Sandbox Code Playgroud)

这是我从官方资源http://tabulator.info/docs/4.1/format#icon 得到的问题是每当我选择文件cell.getRow().getData().idCopy的值fileName正是我想要的但在表格的单元格上它仍然说upload ID而不是 的值 …

javascript image-uploading tabulator

5
推荐指数
1
解决办法
931
查看次数

制表符添加每行带有按钮的列

我正在使用名为Tabulator的 javaScript 库尝试添加列并允许用户能够在每行中上传 1 个图像文件。

(我只使用JavaScript而不是Jquery)我看到这个链接https://github.com/olifolkerd/tabulator/issues/153 ,它有很大帮助,但没有涵盖全部。

我已经在每行中添加一个带有按钮的新列,但我需要能够为每行添加某种 ID,以便我可以选择它并将其连接到将图像发布到我的背面的表单端服务器。

我找不到任何关于如何使用这个库执行此操作的文档,但我找到了一些答案,让我达到了这一点。

var openButton = function(value, data, cell, row, options){ //plain text value
var button ='<button>upload ID </button>';

    button.addEventListener('click',function(){
    console.log("button is working");
});

return button;
};
Run Code Online (Sandbox Code Playgroud)

我的控制台上不断出现错误button.addEventListener is not a function

javascript image-uploading tabulator

3
推荐指数
1
解决办法
1万
查看次数

create_engine() 缺少 1 个必需的位置参数:'engine_opts

应用程序昨天在家中在不同的系统上运行良好**当我尝试在不同的系统上运行它时(**新安装的所有东西) -所以我认为这个错误仅适用于最新版本。

目标是将会话中的用户连接到第二个数据库

我收到这个错误: create_engine() missing 1 required positional argument: 'engine_opts'

我目前的代码:

app.config['SQLALCHEMY_DATABASE_URI'] = "postgres:// ****" #main database
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = "True"
app.config['SQLALCHEMY_ENGINE_OPTIONS'] = "None" #i didnt have that line in my system 
before i've just added it in attempt of fixing this issue

db = SQLAlchemy(app,session_options={"autoflush": False})


@app.route('/test')
def test():
    x = 'postgres://*****' #secondary database for user in session only.
    engine = db.create_engine(x)

return ''
Run Code Online (Sandbox Code Playgroud)

我尝试过的事情:

检查库页面: flask_SQLAlchemy Library

我发现的一切是这样的:

create_engine ( sa_url, engine_opts ) …

python sqlalchemy flask python-3.x flask-sqlalchemy

0
推荐指数
1
解决办法
3224
查看次数

Flask sqlalchemy 不更新行

我将 Flask-SQLAlchemy 与本地托管的 postgresql 一起使用,我有这段代码,我应该在用户登录后更新数据库中的用户数据

    user_id = current_user.get_id()
    print(f"\n\n user_id: {user_id}\n\n") #1--->
    x = users.query.filter_by(id=user_id).first()
    x.sid = request.sid
    db.session.commit()
    print(f'\n\n user_object.sid:{x.sid} , request.sid:{request.sid}  \n\n') #2 --->
Run Code Online (Sandbox Code Playgroud)

#1 : userid:1

#2 : x.sid:QKfGvdsL-HGUM-FHHYF, request.sid:QKfGvdsL-HGUM-FHHYF

但是当我查看 pgadmin4 或稍后请求 x.sid 的值时,它总是“空”

我四处看了看,每个人似乎都以与我编写代码的方式相同的方式建议。

值得一提 :

  1. sid column 已使用flask.migrate 添加,尚未与表一起创建。
  2. 只是为了确保我的代码中没有任何内容覆盖值后缀,pgadmin4 将空值覆盖为唯一的内容并保持不变,其值没有发生任何变化。
  3. 我尝试使用db.session.add(x)但它一直说数据信息已经存在

python sqlalchemy

0
推荐指数
1
解决办法
35
查看次数