小编Ale*_*tin的帖子

当运行包在US-ASCII中获得无效的字节序列时

我正在尝试部署我的Rails 3.0应用程序.我在FreeBSD生产服务器上使用rvm和ruby 1.9.2(p 180或p 290 - 没有区别).当我运行bundle命令时,我在每个:git gem上得到这个异常(似乎只有当我在Gemfile中使用带有:git选项的边缘版本时才会引发异常):

...
Installing has_scope (0.5.1) 
Installing responders (0.6.4) 
Using inherited_resources (1.2.2) from https://github.com/josevalim/inherited_resources.git (at master) /home/tmr/data/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:1915:in `gsub': invalid byte sequence in US-ASCII (ArgumentError)
from /home/tmr/data/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:1915:in `to_yaml'
from /home/tmr/data/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/site_ruby/1.9.1/rubygems/builder.rb:79:in `block (2 levels) in write_package'
from /home/tmr/data/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:73:in `block (3 levels) in add_gem_contents'
from /home/tmr/data/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_writer.rb:83:in `new'
from /home/tmr/data/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:67:in `block (2 levels) in add_gem_contents'
from /home/tmr/data/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:65:in `wrap'
from /home/tmr/data/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:65:in `block in add_gem_contents'
from /home/tmr/data/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_writer.rb:113:in `add_file'
from /home/tmr/data/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:63:in `add_gem_contents'
from /home/tmr/data/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/site_ruby/1.9.1/rubygems/package/tar_output.rb:31:in `open'
from /home/tmr/data/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/site_ruby/1.9.1/rubygems/package.rb:44:in `open'
from /home/tmr/data/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/site_ruby/1.9.1/rubygems/builder.rb:78:in `block …
Run Code Online (Sandbox Code Playgroud)

deployment encoding bundler ruby-on-rails-3

23
推荐指数
2
解决办法
1万
查看次数

Rails应用程序体系结构与RDF存储一起使用

我需要创建一个应用程序,它将数据保存在RDF存储中以供后续处理.我有几个解决方案,不知道该选择什么:

  1. 使用经典的应用程序架构和AR/Mongoid + RDF渲染+爬虫,它可以聚合RDF数据并将其保存到存储中.这很舒服,但我需要创建一个爬虫并在每次保存时提供数据.
  2. 使用spira ORM并直接保存到RDF存储.在这里,我不需要编写爬虫,但我需要为auth插件制作后端并实现所有不支持spira的东西.
  3. 使用经典架构+额外的spira模型,这样我就可以为每个实体设置2个模型类,例如:Spira中的用户和Spira中的UserSpira,其中也保存了User Spira对象的保存事件.

选择什么应用程序架构?可能是其他一些解决方案?

activerecord rdf ruby-on-rails ruby-on-rails-3

10
推荐指数
1
解决办法
502
查看次数

link_to(:controller =>"something")helper + Devise无法正常工作

所有!也许有人知道为什么这样:

def index_link(object, content = t("#{object.to_s.pluralize}.index"))
  #link_to(content, {:controller=>object.to_s.pluralize}, :scope=>"") if can?(:read, p(object)) #this doesn't work too
  link_to(content, :controller=>"trademarks")
  #link_to(content, trademarks_path) #this do work, but I need to set path from object
end
Run Code Online (Sandbox Code Playgroud)

像这样的例外:

No route matches {:controller=>"devise/trademarks"}
Run Code Online (Sandbox Code Playgroud)

堆:

actionpack (3.0.3) lib/action_dispatch/routing/route_set.rb:424:in `raise_routing_error'
actionpack (3.0.3) lib/action_dispatch/routing/route_set.rb:406:in `generate'
actionpack (3.0.3) lib/action_dispatch/routing/route_set.rb:453:in `generate'
actionpack (3.0.3) lib/action_dispatch/routing/route_set.rb:481:in `url_for'
actionpack (3.0.3) lib/action_dispatch/routing/url_for.rb:131:in `url_for'
actionpack (3.0.3) lib/action_view/helpers/url_helper.rb:99:in `url_for'
actionpack (3.0.3) lib/action_view/helpers/url_helper.rb:236:in `link_to'
app/helpers/application_helper.rb:53:in `index_link'
app/views/layouts/application.html.erb:20:in `_app_views_layouts_application_html_erb___741328535__615736668_0'
actionpack (3.0.3) lib/action_view/template.rb:135:in `send'
actionpack (3.0.3) lib/action_view/template.rb:135:in `render'
Run Code Online (Sandbox Code Playgroud)

以及如何使它工作?

url-routing helpers ruby-on-rails-3

8
推荐指数
1
解决办法
2851
查看次数

用户可编辑的HTML XSS保护(tumblr like)

我希望我的服务具有这样的功能:作者可以完全自定义页面,但不能窃取用户的cookie.

Tumblr遇到了一些麻烦,但成功解决了这些问题http://www.riyazwalikar.com/2012/07/stored-persistent-xss-on-tumblr.html

所以我需要解决方案

  1. 没有节制
  2. 完全访问用户 - 作者的页面的html代码,不想要白名单过滤和模板语言(现在它是如何工作的:()
  3. 没有机会偷走对方的饼干(在其他作者的网页上)
  4. 集中认证db
  5. 理想:在每个作者页面上没有身份验证

据我了解tumblr:

  1. 单独的域无法访问彼此的cookie
  2. 用户仍然在每个子域上进行身份验证(HOW ??? www.tumblr.com js可以访问主会话cookie?这样安全吗?)
  3. auth cookies应该是httponly?..

我可以为用户提供安全舒适的解决方案吗?cookie-theft是完全访问html的主要问题吗?

security xss tumblr

7
推荐指数
1
解决办法
740
查看次数

如何在rails应用程序中强制使用gem版本?

我需要使用可寻址的2.2.4 gem,但我有2.2.5版本(因为这里讨论了一个问题:https://github.com/sporkmonger/addressable/pull/33).我试过了:

source 'http://rubygems.org'
source 'http://gems.github.com'
gem "addresable", "2.2.4"

bundle install
Run Code Online (Sandbox Code Playgroud)

得到 Could not find gem 'adressable (= 2.2.4, runtime)' in any of the gem sources listed in your Gemfile.

如果我手动安装/卸载gem

sudo gem install addressable -v 2.2.4
sudo gem uninstall addressable -v 2.2.5
Run Code Online (Sandbox Code Playgroud)

我犯了同样的错误.

那么,我怎么能为我的应用强制2.2.4版本?

rubygems ruby-on-rails ruby-on-rails-3

2
推荐指数
1
解决办法
3895
查看次数