`
yangzhihuan
  • 浏览: 169182 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

我的ROR代码还是写得比较山寨

阅读更多
今日看了不少 http://guides.rubyonrails.org 上面的示例代码,发现自己写的ROR代码,想当然地写,一看就知道是没有经过正规化的山寨型代码,比如:
@discussion = Discussion.new(params[:discussion])
@discussion.resource = @page

@discussion.save!

官方的写法如下:
@discussion = @page.discussions.create(params[:discussion])
@page.save

我的写法也无不可,照样正常工作,不过官方的怎么看怎么顺眼一些(不知道是不是心理作用)。但是官方的写法中,两个model的关系看得比较顺眼些。

ruby的代码风格肯定是会有很明显的个人风格的,这个看ruby语言的特性就知道了,同一样的功能,N个人可以有N种实现风格的。

不过我觉得多看一些官方的示例代码,不但可以规范一下,连思维方式都大有好处。

不过也不怕,一步步慢慢来,总会写出令自己满意的代码的。

一直有心想读一读ROR的源代码,只是一时半会间,不知道如何开始。
分享到:
评论
4 楼 fnet 2008-11-14  
我觉得上面挺好的呀?有什么山寨的。
3 楼 jack 2008-11-14  
看到build,

build,我有次建立了表 ,名字就叫builds,然后
一运行 user.build,啊,就新建了一个对象,真晕,整了好久才知道有一个build的函数。

这个可以随意定义和覆盖同名函数的功能,出现这样的情况,实在是晕年。
2 楼 wosmvp 2008-11-14  
另外那个‘官方’代码如果 @page 也是新建元素的话,这种写法是无效的吧
应该是:  
@page.discussions.build(params[:discussion])
@page.save
为了统一,还不如全和按上面写呢
1 楼 rainux 2008-11-14  
看一遍 AWDWR 就知道这种写法了。

相关推荐

    RoR选题方向—源代码

    ASP.NET、C#和J2EE/Java是RoR的主要竞争对手,它们各自有各自的优点和适用场景,了解这些技术可以帮助你比较和选择最适合的开发工具。 在深入研究RoR源代码时,建议先从官方文档和开源项目开始,例如GitHub上的...

    RoR性能优化经验谈

    RoR(Ruby on Rails)是一种流行的开源Web开发框架,以其高效和简洁的代码著称。然而,随着网站规模的增长,性能优化成为必不可少的环节。在本文中,我们将探讨一些RoR性能优化的关键方面,主要基于JavaEye网站在...

    ror

    NULL 博文链接:https://xuxiangpan888.iteye.com/blog/266696

    ror中文资料

    7. **测试驱动开发(TDD)**:RoR鼓励TDD,提供了Rspec、Cucumber等测试工具,确保代码质量。 8. **Scaffold**:快速生成基本CRUD(创建、读取、更新、删除)操作的代码,用于快速搭建应用原型。 9. **ActiveSupport...

    初探ROR

    **初探ROR** Ruby on Rails(简称ROR)是一个基于Ruby编程语言的开源Web应用程序框架,它遵循MVC(模型-视图-控制器)架构模式,旨在促进开发过程的简洁性和效率。Ruby on Rails的核心理念是“Don't Repeat ...

    ROR安装必备所有架包

    在Ruby on Rails(ROR)开发环境中,安装和配置正确的依赖包是至关重要的。这个压缩包包含了一系列用于ROR框架的基础组件,但不包括Ruby本身。让我们深入了解一下这些包的作用和重要性。 首先,`actionpack`是Rails...

    RoRBlog 基于RoR的博客系统

    基于RoR的博客系统,代码风格简单清晰,前后太完善,适合初学者。

    ror实例

    Ruby on Rails(简称RoR或Rails)是一种基于Ruby语言的开源Web应用框架,它遵循Model-View-Controller(MVC)架构模式,旨在提高开发效率并提供简洁、优雅的代码结构。"ror实例"可能指的是在学习或实践中,通过创建...

    神经网络ror resenet模型

    **神经网络Ror ResNet模型详解** 在深度学习领域,ResNet(残差网络)模型是具有里程碑意义的创新,由He et al.在2015年提出。该模型解决了深度神经网络训练中的梯度消失问题,允许构建非常深的网络结构。而“Ror”...

    我的ror的第一天

    标题 "我的ror的第一天" 暗示了这是一个关于Ruby on Rails(简称RoR)的初学者经验分享,RoR是基于Ruby语言的开源Web应用框架,它遵循MVC(模型-视图-控制器)架构模式,使得开发过程更加高效。 在描述中提到的...

    ROR 文件的上传与下载

    ### ROR 文件的上传与下载:深入解析与实践 在Ruby on Rails(简称ROR)框架下,处理文件的上传与下载是一项常见的需求,尤其是在构建包含媒体内容的应用程序时。本文将基于给定的文件信息,详细阐述如何在Rails...

    Windows 上搭建 ROR环境

    ### Windows上搭建Ruby on Rails(ROR)环境详解 #### 一、引言 随着Web开发技术的不断发展,Ruby on Rails(简称Rails或ROR)作为一种高效、简洁且优雅的Web开发框架,受到了广大开发者的青睐。然而,在Windows...

    freemis 基于ror框架的mis

    3. **Scaffolding**:RoR提供快速原型开发工具,能自动生成基本的CRUD(创建、读取、更新、删除)操作的视图、控制器和模型代码,加速开发进程。 4. **Convention over Configuration**:RoR强调约定优于配置,减少...

    ROR介绍演讲课件 ruby on rails

    RoR的核心理念是“Don't Repeat Yourself”(DRY)和“Convention Over Configuration”(CoC),即避免重复代码,推崇约定优于配置,这让开发变得更加高效。 在RoR中,模型(Model)负责处理数据和业务逻辑,与...

    ROR环境配置

    在Eclipse中,你可以利用其强大的代码编辑、调试、重构和版本控制功能进行ROR开发。例如,你可以通过右键点击文件进行Run As -> Ruby Application来运行你的ROR应用。同时,Eclipse的集成版本控制系统如Git可以帮助...

    ROR绿色最新环境(2013/3/10)

    ROR环境 Ruby version 1.9.3 (java) RubyGems version 1.8.24 Rack version 1.4 Rails version 3.2.12 JavaScript Runtime therubyrhino (Rhino) Active Record version 3.2.12 Action Pack version 3.2.12 ...

Global site tag (gtag.js) - Google Analytics