2011-04-29 63 views
0

是否有任何插件/插件/等。除了RSpec之外,在开始一个新项目之前,我应该看看?我将要做一个相当沉重的Ajax /交互式Web应用程序。我完成时可能会有60个模型。我即将开始一个新的项目在轨道上

我只是在寻找方向,以什么人通常使用这些天与节省时间的轨道,让你的代码更清洁,等

一些更具体的东西:

  • 支持不同的用户角色/特权,而不必将自己输入到具体的基类中,因为角色可以共享(基本上更像是基于特权的系统,而不是每个用户类型的子类)。
  • 有很多json请求和结果 - 并不是很多旧式的web编程。
  • 主题
  • 密码腌/加密
  • 基于权限的动态布局
  • 网站的公共/私人部分
  • 大量的CSS/JS
  • 文件和图片上传的。也许图像存储/管理是另一回事,或者我应该把这些日子放在数据库中?
  • 插入时taging
  • 的记录自动定位/更新(我想我会只是代码这一点我自己,但我把它扔出去反正有)
  • 分页结果
  • 发送电子邮件
  • cron- (发送每周通讯,删除未使用的用户帐户,删除磁盘上未使用的图像等)

我问这些问题,因为我是一名刚刚进入Ruby的硬核Java程序员

+0

对于大多数应用程序来说,60个型号相当多。我的第一个想法是,很多这些模型可能会分享很多共同点,并可能被分解出来。如果每个模式的模式存在细微差异,则可以序列化不同的字段(尽管您将失去查询它们的能力),或者考虑一个无模式数据库。 – michaeltomer 2011-04-29 14:46:16

+0

我实际上正在重写一个应用程序,所以我已经知道这个模式。没有什么可以做的分解出来。但是,也许使用Mongodb或其他东西将是一个不错的选择,但我对于nosql数据库的说法并不了解。 – egervari 2011-04-29 15:11:04

+3

您可能想查看http://ruby-toolbox.com/,其中列出了按照类别分类的流行宝石。 – 2011-04-29 15:30:01

回答

3

取决于您的项目范围。但是,“常见”可能与开发者不同。我常见的宝石列表包括:

  1. Devise进行身份验证。替代方案:用于用户角色的Authlogic
  2. Cancan
  3. Carrierwave上传。一些替代方案:回形针,蜻蜓
  4. Kaminari分页。另一种方法:为漂亮的网址提供Will_paginate
  5. Friendly_id

以上列表中,是个人偏好。我能想到的任何其他宝石,可能更适合特定/非一般项目范围。

希望有帮助!

+0

你们俩都有很好的答案。我不知道该选谁。 – egervari 2011-04-30 12:06:23

1

这很大程度上取决于你在做什么。 Devise和Authlogic适用于身份验证,文件附件的Paperclip,测试数据的Factory Girl,改进的CSS处理的SCSS ......有这么多。你在做什么样的应用以及你期望的挑战?更多信息会使建议变得更容易。

根据你的意见编辑:我会建议Devise用户认证,它会处理盐渍和其他一切,它几乎是无脑的易于使用。用于文件和图片上传,Paperclip。对于标记,请查看jQuery Token Fields plugin

+0

我需要支持不同的用户角色/权限,而无需将自己输入到具体的基类中,因为角色可以共享(基本上更像是基于权限的系统,而不是每个子类都有子类)用户类型)。有很多json请求和结果 - 没有很多老式风格的web编程。我将需要支持主题,密码salting,基于特权的动态布局,网站的公共/私人部分,大量的css/js,文件和图像上传,计时......其他任何东西? – egervari 2011-04-29 15:14:19

+0

其他一些事情:插入/更新时自动定位记录(我想我自己编写这个代码,但无论如何我都会抛出它),分页结果,发送电子邮件,类似cron的功能来执行服务(发送出去每周通讯,删除未使用的用户帐户,删除磁盘上未使用的图像等)。也许图像存储/管理是另一回事,或者我应该把这些日子放在数据库中? – egervari 2011-04-29 15:28:04

相关问题