什么是可用的(最好的)ruby基于IP的地理定位宝石/插件?
它们在功能,性能和易用性方面如何相互比较(例如,它们是与Web服务交互,还是需要单独的数据库等)?
我希望任何使用过一些人的人都可以分享他们的经验并提出建议.
ruby rubygems ruby-on-rails geolocation ruby-on-rails-plugins
在以下场景中,我需要检查fields_for循环中对象属性的值.
<%= f.semantic_fields_for :review_details do |rd| %>
<%= rd.input :review_criteria_id, :as=>:hidden %>
<% end %>
Run Code Online (Sandbox Code Playgroud)
在循环中,:review_criteria_id渲染为隐藏字段,但我有一个场景,如果它是一个特定的标准,我必须打印更多的信息.如何获得review_criteria_id循环中的值.我用了:
rd.review_criteria_id
Run Code Online (Sandbox Code Playgroud)
但既然rd是形式上的对象,那么我就无法得到它的价值:review_crieteria_id.
ruby-on-rails ruby-on-rails-plugins formtastic ruby-on-rails-3
我正在研究一个正在考虑使用Cassandra作为数据库的项目.我们希望最终迁移到Cassandra,即使我们使用MySQL开始,因为它具有可扩展性.我知道像Facebook,Digg和最近的Twitter这样的大公司正在使用Cassandra,但我不相信任何这些网站都会使用Rails.我的问题是使用Ruby on Rails使用Cassandra是否可行.需要考虑的要点:
感谢任何提示.
我正在创建一个由核心和几个模块组成的应用程序.这些模块是rails引擎,并提供实际功能,因为核心本身仅充当主机.引擎托管/lib在各自的路径上并安装在它们各自的路径上.
coreApp
???lib
??? module1
??? module2
??? etc
Run Code Online (Sandbox Code Playgroud)
然后像这样安装模块
mount Module1::Engine => "/module1", :as => "module1"
mount Module2::Engine => "/module2", :as => "module2"
Run Code Online (Sandbox Code Playgroud)
虽然登录本身是由模块完成的,但核心也负责处理会话.
我还没有找到一种与引擎共享核心应用程序布局的好方法.截至目前,这就是我如何使布局可用于引擎:
coreApp
??? app
??? views
??? layouts
??? application.html.erb
??? core.html.erb
Run Code Online (Sandbox Code Playgroud)
该文件core.html.erb仅包含
<%= render :template => 'layouts/application' %>
Run Code Online (Sandbox Code Playgroud)
然后是这样包含在每个模块中
module Module1
class ApplicationController < ActionController::Base
layout "core"
end
end
Run Code Online (Sandbox Code Playgroud)
虽然它不是特别优雅,但它工作正常,并且模块的内容呈现在yield应用程序布局中的语句所在的位置.
问题如下:
我需要一种方法来包含活动模块的样式表.
标题包含有关登录用户的信息,例如
Logged in as <%= @user[:realname] %>
Run Code Online (Sandbox Code Playgroud)
这来自核心 home_controller
def index
@user …Run Code Online (Sandbox Code Playgroud) 你推荐用于标记的插件或宝石是什么?其中有很多,acts_as_taggable,acts_as_taggable_on_steroids,acts_as_taggable_on,...
你说什么?
我读了一些关于这些论点的文件,但我不清楚它们是什么,它们之间有什么区别,如果其中一个符合我的需要.
我需要编写一个可插入其他应用程序的应用程序,并希望将其作为gem包含在其他应用程序中.基本上我需要一些模型,一个控制器和没有视图,加上一些初始化,支持来自托管应用程序和生成器的配置参数.
我是正确的吗?
我应该阅读什么才能理解如何做到这一点?
更新:
有很多细节AF一个很不错的文章,可以发现在这里.
实质上:
Railtie是Rails框架的核心,它提供了几个钩子来扩展Rails和/或修改初始化过程.
Rails :: Engine只不过是一个已经设置了一些初始化程序的Railtie.由于Rails :: Application和Rails :: Plugin是引擎,因此这里描述的相同配置可以在所有三个中使用.
如何在Rails中检测浏览器类型及其版本.我想检查特定浏览器的版本,如果它不是要求用户升级它的浏览器版本..我使用下面指定的命令,但因为它不遵循标准模式我无法使用它.
request.env['HTTP_USER_AGENT']
Chrome out put is below
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.16 (KHTML, like Gecko) Chrome/10.0.648.205 Safari/534.16
Safari out put is below
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/533.21.1 (KHTML, like Gecko) Version/5.0.5 Safari/533.21.1
FireFox out put is below
Mozilla/5.0 (Windows NT 5.1; rv:2.0) Gecko/20100101 Firefox/4.0
Opera out put is below
Opera/9.80 (Windows NT 5.1; U; en) Presto/2.8.131 Version/11.10
Internet Explorer out put is below
Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727)
Run Code Online (Sandbox Code Playgroud) 我正在使用paperclip来处理图像上传到rails.它在我的开发OSX机器上工作正常,但现在我的Web服务器上出现此错误:
[paperclip] /Users/marky/bin/identify '-format' '%wx%h' '/tmp/stream,16451,2.JPG[0]' 2>/dev/null
[paperclip] An error was received while processing: #<Paperclip::CommandNotFoundError: Paperclip::CommandNotFoundError>
[paperclip] /Users/marky/bin/identify '-format' '%wx%h' '/tmp/stream,16451,2.JPG[0]' 2>/dev/null
[paperclip] An error was received while processing: #<Paperclip::CommandNotFoundError: Paperclip::CommandNotFoundError>
Run Code Online (Sandbox Code Playgroud)
现在我明白了原因; 识别实际上是/ usr/bin/not/Users/marky/bin /来自我的开发机器.我有:
Paperclip.options[:command_path] = "/usr/bin"
Run Code Online (Sandbox Code Playgroud)
在我development.rb,但我仍然得到错误.我不知道如何解决这个问题,任何人都可以帮忙吗?
如何将我一直在开发的论坛应用程序转换为Rails引擎,以便它可以嵌入到其他应用程序中?
我应该添加,保留或删除什么?我应该提供一种集成模型的方法吗?如何设置路由和用户配置?如何将其打包成宝石?我应该注意什么?
阅读完文章和文档后,我设法缩小了我的问题范围:
app/models/engine文件夹中吗?config应该保留哪些配置文件?public文件夹怎么样?在Rails 3.1中,样式表和javascripts被移动到app/assets文件夹,这解决了这个问题,但是如何在Rails 3.0中实现相同的效果呢?我正在编写一个rails应用程序,就其本质而言,不需要用户注册,因此不能使用身份验证作为保护记录的常用方法.(我知道,我知道......)此处的用户信息仅限于电子邮件地址.所以我确实需要一种方法来使我的模型ID不可预测,以便其他ID不容易被猜到.(我知道我知道...)
我已经尝试使用像uuidtools这样的插件随机化id,因为创建了记录,如下所示:
require 'uuidtools'
class Post < ActiveRecord::Base
def before_create()
self.id = OpenSSL::Digest.SHA1.hexdigest(UUID.timestamp_create())
end
end
Run Code Online (Sandbox Code Playgroud)
......一开始看起来不错,但有趣的事情发生了.ActiveRecord有时会尝试在id中插入一个0值,我会收到错误,例如'找不到id = 0的帖子'等等...
我已经没想完了.有人可以帮忙吗?谢谢.