大约从06年9月正式接触rails。买ror书,按书上画瓢。开始进行实验项目开发,再到正式项目开发,已经过去了大半年了。这个大半年的应用中,最大的感触还是,rails虽然很不错,但是依然有很多地方让你痛苦不堪。
不过这个也是大部分技术开始应用的时候经常遇到的,有些小细节上处理不好,整个项目就会被卡死。
我所遇到的rails的最大难题,第一是。中文处理,第二:数据库,第三:部署。 这些问题在前期开发中和试验项目中实在是难以遇到,但是正式项目中却能让项目失败的几个点。对于准备热心应用rails项目的各位同学,千万要当心这点。
做rails项目,要么就是严格按照rails最擅长的方式去处理,linux/unix运行环境,mysql数据库。在这种情况下,部署,和数据库部分问题就会很少,最多的也就是中文处理问题。中文处理的解决方法很多,基本不成为问题。
不过由于工作环境的问题,rails的应用环境和推荐完全不同。
中文处理问题,尝试完全用gb2312编码,问题超级多,费尽心思,虽然找到一个办法,不过并不好用。最终还是不得不采用了utf8。
数据库:rails有说明能够支持ms sql server。 能够支持和实际应用,距离相差又是甚远。虽然都是采用utf8编码,但是非常容易出问题。
部署: 用的是windows 2003,robbin的文章帮助很大,问题依然存在。 某些情况下,发送post指令,页面调用就会出错,这种错误开发环境下根本就从来不出现。
上面的三个问题,从开始到最终解决,最长的有几个月那么久。(解决办法,我都在这里发帖)。而这三个问题,从开始看各位同学对rails,ruby的推崇的文字,到实验性代码中以及ror的书上,是从未提起过。三个问题,随便哪个问题解决不了,项目就完全流产了。使用新技术的整个过程中,风险依然很大。回头想想,还真是汗颜。
论坛上有不少的同学经常想在公司里面推广新技术,新方法。我这里奉劝一句, 除非你已经用这个新技术,新方法做过好几个项目,方方面面问题都遇到过了,否则不要去推广。很多细节,只有做过,遇到过,才能够明白,理解和解决的。一些看上去不注意的细节角落,往往就是一个项目杀手隐藏在那里。当心啊当心。
分享到:
- 2007-06-16 10:03
- 浏览 28862
- 评论(69)
- 论坛回复 / 浏览 (62 / 45879)
- 查看更多
相关推荐
### 重构你的Rails程式码 在进行Rails版本升级时,重构代码是一个绝佳的机会。本文将深入探讨为何这是个好时机来进行重构,并提供一系列实用的方法帮助您优化代码。 #### 为什么这是一个好时机重构代码? 1. **...
但二进制文件太多,核心代码都没没在大量细节实现中,全部看完不现实,走马观花又很难领会精髓;纸上得来终觉浅,眼过千遍,不如手过一遍,干脆重新造个轮子;于是就有了mini-rails,参照Rails原始码,省略细节,...
如果您不熟悉Rails,请不要感到害怕,设置起来并不难。 异常处理程序使您可以通过ActiveRecord或HTTP POST将错误消息中的关键信息保存在某个地方的数据库中,并在应用程序布局文件中向用户显示自定义的错误消息。 ...
丛林很难找到可以向朋友炫耀的独特产品吗? 欢迎来到丛林。 奇怪的是新常态。 Jungle使用Rails 4.2构建,为您带来无与伦比的电子商务体验,改变了您对在线购物的思考方式。最终产品技术一个使用Rails 4.2构建的电子...
但是,很难深入了解Rails。因为要了解Rails,您首先需要了解Ruby。与任何语言和任何WAF一样,了解语言的特征并理解WAF在您脑海中的移动对于掌握WAF至关重要。 在上半部分,有一门Ruby课程首先要了解Rails。在下半年...
问题在于Rails不能很好地使用它。 Rails有一种复杂的线程管理方式,称为Executor,并发-ruby(最具体地说是 )无法与之无缝配合。 这个gem的目标是提供一个简单的库,使开发人员无需担心Rails的Executor和随之而来...
解压后是一个exe文件,至于怎么将系统的替换为这个,相信难不到大家的哈 博文链接:https://msdn.iteye.com/blog/164888
在 Rails 中使用 Jest 和 React 应该是很棒的立方体……但它似乎很难。 介绍 最近,作者处于一个遗留项目想要在保留 Rails 后端的同时重新设计前端的情况。 该项目决定随着时间的推移逐步进行基于 React 的重新设计...
我们(Harry's)已决定弃用Dynosaur-rails,并将Dynosaur变成配置有YAML文件的无头控制台应用程序。 我们只是发现很难维护Web应用程序,让首页报告/状态功能在一年左右的时间内未开发,并且总体上感觉它没有什么...
成长 Ruby on Rails是Shopify上Web应用程序的首选框架。 它是经过认可的堆栈,可用于快速,轻松地开发需要使用关系数据库,HTTP服务器和HTML视图... 我们将推荐一组简单但实用的抽象和实践,这些抽象和实践可在Rails
好的,让我们开始制作一个简单的Rails应用程序。 rails new SampleReactApp cd SampleReactApp 让我们添加一些宝石开始。 在您的gemfile中,添加这些基于React的宝石。 # Just for making the views nicer gem '...
成长 Ruby on Rails是Shopify上Web应用程序的首选框架。 它是经过认可的堆栈,可用于快速轻松地开发需要使用关系数据库,HTTP服务器和HTML... 我们将推荐一组简单但实用的抽象和实践,这些抽象和实践可在Rails应用程
RoR 概念(环境设置可以说是 rails 中最难的部分,但使用更容易) MVC 导轨上的 完全响应(在桌面上更改浏览器大小以查看响应能力) 用户身份验证,通知与 jQuery 集成 集成(用于照片动画) 用于图像托管的集成...
Rails 的 iframe 调整器用于Rails 包装用法在 application.js 中,添加: // for host//= require iframeResizer.min// for iframe client//= require iframeResizer.contentWindow.min 去掉js ...很难嵌入到rails中。
本文将详细介绍Ruby on Rails中的一些路由配置建议,包括如何有效地使用RESTful路由、成员(member)和集合(collection)路由、嵌套路由以及命名空间路由等。 #### RESTful路由 在设计API时,通常推荐使用RESTful风格...
基础表格生成器 这个宝石有什么用?... 到目前为止,它仅在 Rails 4.2 和 Ruby 2.2 上进行了测试,但如果不太难的话,我很乐意同时支持 Rails 和 Ruby 的旧版本。 听起来很棒! 我如何使用它? 以通
这是我的第一个非教程引导 Rails 应用程序! 这是一个简单的待办事项列表,仅用于学习目的,但它仍然非常具有挑战性。 你可以玩它。 我没有包含用户登录/身份验证的内容,因为我希望这是一个为期一周的项目,而且...
它们很容易被人类解决,但机器人很难破解。 您还可以根据自己的问题配置gem。 作为替代方案,也可以作为处理任何API问题的备用。 由于基于逻辑的验证码为什么是个好主意的原因,请访问 。 要求 > = 2.5 > = 4 ...
rails4patterns-codeschool级别 1:模型胖控制器不好很难明白业务逻辑未封装更多代码冲突新功能难以实现避免从回调中调用其他域对象回调是在对象生命周期的特定时刻被调用的方法。 在回调中引用其他模型: 引入紧...
Rails启动Omakase这些代码整理完善自我八月到九月开发的喜感网第一版的基础部分的代码,同时也是第二版的基础,希望这里面的代码能对他人快速PS:部署和运维比开发难多了...这个repo另一个目的是记录我对rails app...