Ruby on rails 将HTML转换为word文件?
如何在word文件(即docx文件)中转换ruby文件。对于pdf,我们使用虾宝石。但是word文件中是否有任何gem。我正在尝试将我的html文件转换为word文件,以便用户也可以对其进行编辑。在那种情况下该怎么办?我正计划将该文件转换为word文件。有没有可能 如果您使用的是Rails: 在initializers/mime_types.rb中: 在控制器中: 假设要导出“显示动作”:Ruby on rails 将HTML转换为word文件?,ruby-on-rails,ruby,ruby-on-rails-3,ruby-on-rails-3.1,rubygems,Ruby On Rails,Ruby,Ruby On Rails 3,Ruby On Rails 3.1,Rubygems,如何在word文件(即docx文件)中转换ruby文件。对于pdf,我们使用虾宝石。但是word文件中是否有任何gem。我正在尝试将我的html文件转换为word文件,以便用户也可以对其进行编辑。在那种情况下该怎么办?我正计划将该文件转换为word文件。有没有可能 如果您使用的是Rails: 在initializers/mime_types.rb中: 在控制器中: 假设要导出“显示动作”: def show @item = Item.find params[:id] respond_to
def show
@item = Item.find params[:id]
respond_to do |format|
format.html # show.html.erb
format.xml { render :xml => @item }
format.msword { set_header('msword', "#{@item.title}.doc") }
format.pdf do
render :pdf => 'Coming soon...', :layout => false
end
end
end
在application_controller.rb中定义set_头:
现在定义show.msword.erb#您可以使用任何模板处理程序,如haml等。
如果您使用的是Rails:
在initializers/mime_types.rb中:
在控制器中:
假设要导出“显示动作”:
def show
@item = Item.find params[:id]
respond_to do |format|
format.html # show.html.erb
format.xml { render :xml => @item }
format.msword { set_header('msword', "#{@item.title}.doc") }
format.pdf do
render :pdf => 'Coming soon...', :layout => false
end
end
end
在application_controller.rb中定义set_头:
现在定义show.msword.erb#您可以使用任何模板处理程序,如haml等。
使用单词gem。
自2015年11月以来,它一直没有更新过,但运行良好。使用HTMLWord gem。
它自2015年11月以来一直没有更新过,但运行良好。
f=File.new('myword.docx','w')f.write(File.read('my_html.html'))f.close
…试试这个thanks@RajarshiDas:为什么不直接复制FileUtils.cp
您想复制什么@kabie还有很多其他方法,通过使用File.readlines
逐行使用rails导出到文档吗?f=File.new('myword.docx','w')f.write(File.read('my_html.html'))f.close
…试试这个thanks@RajarshiDas:为什么不直接复制FileUtils.cp
您想复制什么@kabie使用文件逐行导出还有许多其他方法。readlines
您想使用rails导出到文档吗?文件被创建,但当我打开它时,我会胡言乱语,word要求我转换格式文件被创建,但当我打开它时,我会胡言乱语,word要求我转换格式
def set_header(p_type, filename)
case p_type
when 'xls'
headers['Content-Type'] = "application/vnd.ms-excel; charset=UTF-8'"
headers['Content-Disposition'] = "attachment; filename=\"#{filename}\""
headers['Cache-Control'] = ''
when 'msword'
headers['Content-Type'] = "application/vnd.ms-word; charset=UTF-8"
headers['Content-Disposition'] = "attachment; filename=\"#{filename}\""
headers['Cache-Control'] = ''
end
end
YOUR HTML HERE TO EXPORT TO DOC
AS LIKE NORMAL ERB TEMPLATE