瞎扯淡 瞎琢磨一个多月的 Rails,求指导

Fighting_3 · 2017年06月09日 · 最后由 sheldonzipingchen 回复于 2017年06月13日 · 2426 次阅读

我之前报过一个 java 的培训班,学了大半年把,会做一点简单的 web 应用开发,也能简单的使用一些框架,SpringMVC,Hibernate,Struts2。

最近找工作,进了一家新创办的公司,他们准备用 ruby on rails 做开发。来了一个月多点了,每天就自己在网络上搜集点资料学习 rails 的知识(ruby 基础语法什么的我看了几天,感觉看这些意义不大,想在 rails 框架中写 demo 来学习 ruby),现在能在开发模式下做一些简单的功能了(说白了就是数据库的增删改查基础功能)。暂时对于 http 的请求理解如下:首先用户发送请求,然后路由匹配到相应的 controller 和 action,action 里做一些数据库操作或者业务逻辑,然后将响应反馈回去,然后 html 页面再根据接收到的反馈数据渲染页面。

最近 boss 让我先把公司的主页(基本都是 html 静态页面,是在 java 环境下做出来的)用 ruby on rails 重新实现下,瞎折腾了好久,反正是能在开发模式下正常访问操作了;后来又让我搞个简单的后台,我又陷入了无限的度娘之路(主要是本站的好多帖子我这个菜鸟根本看不懂再说啥),好不容易搞得差不多了,能对主页的一些文本进行替换,更换一些图片等。这个时候。。。我发现还有生产模式这种东西。。。然后学着弄成生产模式(也是一路跌跌撞撞),终于能在本地用 rails s -e production 访问了,又发现 public 下的图片访问不了(因为我用了 kindeditor,上传的图片在 public/uploads 目录下),本站看见好多资料都说 rails 默认是不处理静态资源的,都是给 Nginx 或者其他的啥啥啥处理,然后我就顺着这些资料看,发现又是用什么 puma,capistrano,巴拉巴拉巴拉去部署,又要用到 Git(因为从来没用过 Git,所以又卡住了)。。。搞得现在超级烦,脑子好乱,感觉自己不知道应该怎么做,不知道从哪部分学起。(公司没有 rails 的成熟程序员,项目经理也没用过,然后就我一个小喽罗,因为暂时还没有项目,人员还在招聘中,所以纯靠我自己瞎弄)

写的有点乱,但这就是我这一个多月的实际学习经历,希望有大牛帮我理理思路,应该怎么去有条理的,系统的学习 ruby on rails。

顺着这些资料看

你在哪里看的?


淡定点,年轻人,功夫哪能一两天就学成的

我也是公司让转 ruby 的! 我感觉多找些 ruby 的项目! 照着作一遍效果会更好!

huacnlee 回复

因为我生产模式老遇到问题,我用 rails s -e production 运行生产模式的(我在服务器就用 nohup 挂在一个系统进程中运行的),然后发现百度啊,本站啊,好多说生产环境最好用一些部署工具部署到服务器,那些东西我看起来难度有点大。。。光是 Git 就头疼。。。我不是着急速成,是有点没方向,感觉要学的东西太多了,不知道应该怎样循序渐进,不知道从哪方面先入手。

4 楼 已删除
5 楼 已删除
6 楼 已删除

兄弟,你在哪找的项目啊,因为我刚学嘛,用的是最新的版本,ruby2.4,rails5.1,我看 Git 上的项目好多是老版本的,有些连目录结构都不一样。。。。

这个对于 Rails 初学者确实常见,本来只想实现一个页面,结果发现概念越来越多。 相对来说纯后端比如 Go 语言或者 Grape 框架简单一些

系统学习 Rails 的话按照本站的 Wiki 里面就挺好的,通过你的描述这里涉及到的知识包括,前端(HTML,kindeditor),后端(Rails),部署(Nginx,puma,capistrano,生产模式),版本控制(Git)没有基础的话这些知识本来就不是一个月就能完全掌握的。只能按部就班慢慢来。

是的啊,本想写一个发表文章的功能,然后又涉及上传图片,又涉及前端 css 样式,然后就推翻了直接用富文本编辑器,然后又涉及到 pipeline,又是环境问题,感觉就很乱,就没头绪。

慢慢来,现在着急没用,因为未来会遇到更多问题,着急早了😂

我也是 学习 rails 有了几个月了,根据我的想法是不管语法上你觉得有用没用,都要仔仔细细的学习并测试,我的基础知识是在这里学的https://guides.ruby-china.org/

git 因为我是用 coding 做代码托管的 所以 git 的命令或是公钥等等都是根据这个学的https://coding.net/help/doc/git/git-branch.html#section-4

学习了一个完整的项目框架 redmine http://www.redmine.org/projects/redmine/wiki/RedmineInstall

部署工具 我选择的是 apache 所以根据此文档学习的部署,(虽然我也没部署成功)https://swordair.com/docs/redmine-complete-configuration-on-ubuntu/

Nginx, Puma, and MariaDB/MySQL等等这些是根据这篇文档学习的(都是英文,所以我下了个词典一个一个翻译 很烦😅 😅 😅 😅https://blog.rudeotter.com/install-redmine-with-nginx-puma-and-mariadbmysql-on-ubuntu-14-04/

就如前面所说 我大部分的东西都是围绕我所学习的框架 redmine 进行的,所以以上的很多文档都是根据这个框架走的,最后将一个大的文档库给你,希望对你有用http://www.redmine.org/projects/redmine/wiki/HowTos

我的认知当中是作为新手的时候一定要稳扎稳打,即使是有公司领导等等的压力,也不要太过于着急,一切都是为了让你安身立命,而好的技术才是你安身立命之本,在这一方面你可以更自私一些☺

可能最好的学习方法是仿照别人的项目自己实现一个。其实我觉得 tutorial 这本书已经写的很好了,基本涵盖了网站的所有基础功能,有兴趣不妨看一看?

哥们,你在那个城市工作呢,什么单位啊,我也是报班学的 ruby,有时间多交流。

bingo8670 回复

我在合肥呢,报班学得是 java。。。。

miserytan 回复

好,谢谢啊

flowerains 回复

恩,好的,之前搜过这本书,不过好像没有免费的。。。工资都没发,穷的可怜,今天发工资了,去买一本。

18 楼 已删除

有同感,感觉东西越学越多😂

不过不要急,慢慢来,一个一个地学,每天有一点进步就好,循序渐进。

折腾三五个月后你就会发现,

要学的东西还是很多 :)

rennyallen 回复

😂 确实是,感觉自己越来越蠢了。。。。。

其实吧 Java 也不错

我看你缺的不单单是 Rails、Ruby,而是对整个 Web 开发基础概念和工具的认知,也许你该看看这个https://getfullstack.com/ ——内网看起来可能有点慢,不过如果连翻墙都不会的话那就╮(╯▽╰)╭

我看你是报班学的然后才开发了半年一年,给我的感觉就是基础太薄弱了。

建议你给自己 1-2 年的时间,慢慢积累,把基础打好。

知识这种东西,除非是天才,否则再怎么样也没办法这么短时间内学完别人五年十年掌握的知识的。

设计模式,Linux 运维基础,然后才是全栈开发。

我大部分的时候都是参考 Ruby-China 的实现。比如说需要实现一个功能,需要用到的 Gem,除了参考官方文档,就看一下 Ruby-China 怎么使用的,帮助蛮大的。

需要 登录 后方可回复, 如果你还没有账号请 注册新账号