我正在尝试创建一个rails应用程序,它是一个客户端的CMS。该应用程序目前有一个documents类,可以用回形针上传文档。在
除此之外,我们还运行一个python脚本,它访问数据库并获取给定事件的大量信息,创建一个propositionword文档,并将其上载到正确事件下的数据库中。在
这一切正常,但应用程序无法识别文档。我如何制作一个python脚本来正确地上传文档,以便曲别针知道发生了什么?在
这是我的回形针控制器:
def new
@event = Event.find(params[:event_id])
@document = Document.new
end
def create
@event = Event.find(params[:event_id])
@document = @event.documents.new(document_params)
if @document.save
redirect_to event_path(@event)
end
end
private
def document_params
params.require(:document).permit(:event_id, :data, :title)
end
型号
^{pr2}$这是python代码。在
f = open(propStr, 'r')
binary = psycopg2.Binary(f.read())
self.cur.execute("INSERT INTO documents (event_id, title, data_file_name, data_content_type) VALUES (%d,'Proposal.doc',%s,'application/msword');" % (self.eventData[0], binary))
self.con.commit()
您可能应该使用Ruby编写脚本,因为它可以加载任何需要的模型信息或其他类。在
但是,假设您的需求要求使用python,请注意,纸夹不会在数据库表中存储文档,而只存储文件的元数据。默认情况下,实际文件存储在文件系统的/public目录中(也可以是s3,等等,具体取决于您的配置)。我会确保你把文件保存到正确的预期目录。{a1}的路径是默认路径:
因此,您必须进行另一个sql查询来检索新记录的id。我不相信PDF有:style属性,因为您不使用imagicmagick来调整它们的大小,所以构建一个如下所示的路径:
^{pr2}$并从python脚本中保存它。在
相关问题 更多 >
编程相关推荐