虽然我最近的大部分工作主要是使用Ruby on Rails和大量的Javascript(主要是jQuery),但我想构建一个单页应用程序,并意识到Ember.js似乎是一个崭露头角的流行框架接近这些应用程序.
从文档和教程的各种来源来看,似乎Ember.js需要一种与Ruby on Rails或其他典型服务器端框架相比如何解决问题的非常不同的思考方式.似乎有可能使用像Ruby on Rails这样的框架随着时间的推移开发的"事物应该如何运作"的某些假设甚至可能妨碍真正理解和拥抱"Ember Way".
在尝试学习Ember时,Ruby on Rails开发人员需要消除哪些先入为主的观念?Ruby on Rails开发人员应该尝试将他/她的思想包裹起来,最具创新性和最重要的Ember概念是什么?
提前致谢!
当使用从Ryan Bates的Railscasts情节#362的示例应用程序有关导出到Excel(https://github.com/railscasts/362-exporting-csv-and-excel),我已经注意到,Excel 2010中(这是Windows)在打开我使用"下载为Excel"链接下载的.xls文件时给出了一条警告消息.
警告如下:
"您尝试打开的文件格式与文件扩展名指定的格式不同.在打开文件之前,请验证文件是否已损坏且来自受信任的来源.您要立即打开该文件吗? "
点击"是",我可以正常打开文件.使用Excel 2011(在Mac上)时,我甚至没有收到警告消息.但我希望能够提供一个Excel文件,当用户从我的网站下载此类文件时,该文件不会提示该警告.
注意:我也尝试将应用程序中的所有引用从.xls替换为.xlsx,但Excel无法打开该文件.它抱怨:"Excel无法打开此文件.文件格式或文件扩展名无效.请验证文件是否已损坏,文件扩展名是否与文件格式匹配."
我知道的宝石,如AXLSX(的https://github.com/randym/axlsx),但希望我可以只使用Railscasts方法,并速战速决,以消除来自Excel 2010中的警告消息.
非常感谢你的帮助!
在Rails 3中,如果我习惯于build()构建一个对象,有没有办法在对象被保存之前销毁它?
我需要这个的原因是因为我使用嵌套的模型形式,有3代对象:Survey,有很多问题,而问题有很多答案.
在控制器中,我使用构建来预先填充问题和答案.
奇怪的是,如果Survey模型无效,我会使用错误消息重新呈现页面,并且预先构建的问题出现在表单中,但不是答案!
(顺便说一下,如果这很重要,我会使用简单表格.)
无论如何,在我将这些问题与答案一起重建之前,我只是销毁了所有问题,但是如果问题尚未保存到数据库中,你如何销毁这些问题呢?
在我的控制器中:
4.times do
question = @survey.questions.build
@answers.each { |answer| question.answers.build(:label => option.label, :input_type => option.input_type, :available_options => option.available_options) }
end
Run Code Online (Sandbox Code Playgroud)
任何帮助将不胜感激!谢谢!
我们有一个非常独特的用例,我们希望Rails控制器使用Net :: HTTP访问Rails应用程序中的路由.可以这样做吗?我正在尝试这样做时收到超时.当uri是一个单独的Rails应用程序时,当前代码有效,但当uri属于应用程序本身时则不行.这是当前控制器操作的要点:
def export_data
uri = URI("http://localhost:3000")
@data = JSON.parse( Net::HTTP.get(uri) )
respond_to do |format|
...
end
end
Run Code Online (Sandbox Code Playgroud)
忘记我们为什么要这样做.为什么这不起作用?是否可以进行修改以使其工作?提前致谢!