小编ste*_*och的帖子

Ruby可以与r接口吗?

朋友需要为她的博士做一些R编程,因为我是程序员,请我帮她.

所以我看了看一些- [R 相关 webstuff,发现可以通过RPY(蟒蛇)和统计:: R(perl的)与它进行交互.Rubyists有没有办法挂钩R?

是否有学习R的虚拟指南(如视频系列)?

ruby r

13
推荐指数
2
解决办法
5320
查看次数

CSS文本溢出 - 如果文本延伸(n)行,则应用省略号

我正在使用以下代码来防止文本溢出到新行:

.info-box{
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden; 
  height: 3em;
  width: 300px;
  font-size: 1em;
  line-height: 1em;
}
Run Code Online (Sandbox Code Playgroud)

正如预期的那样,这可以工作,但在这个框中有三行的空间.如果文本超出第三行,我如何命令浏览器应用省略号?或者文本溢出仅适用于一个?

如果我需要JS,我probs不会打扰.

css ellipsis

11
推荐指数
1
解决办法
7075
查看次数

当我在终端中打开一个新选项卡时,RVM无法读取.ruby-gemset文件

我在Fedora 20上安装了新的RVM.

如果我cd到myapp,RVM将读取.ruby-gemset文件并切换到相应的gemset,但如果我打开一个新选项卡(control-shift-t)并运行rvm gemset list我发现它使用默认的gemset.

有没有人知道我可能做错了什么?

我在.bashrc中有以下内容

# .bashrc

# Source global definitions
if [ -f /etc/bashrc ]; then
    . /etc/bashrc
fi

PATH=$PATH:$HOME/.local/bin:$HOME/bin:$HOME/.rvm/bin

export PATH
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"
Run Code Online (Sandbox Code Playgroud)

而且我在.bash_profile中的内容相同

# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
    . ~/.bashrc
fi

PATH=$PATH:$HOME/.local/bin:$HOME/bin:$HOME/.rvm/bin

export PATH

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"
Run Code Online (Sandbox Code Playgroud)

终端是Fedora附带的沼泽标准终端.

ruby rvm

10
推荐指数
2
解决办法
1472
查看次数

背景仅与视口一样宽

恼人的问题

当我放大我的视口窗口(在firefox,chrome中),然后水平向右滚动时,我的背景图像被剪裁

图像最能描绘出正在发生的事情:

放大

放大 - 图像仅与视口一样宽

缩小输出 - 问题不会发生

缩小 - 问题消失了

以下是我的css中可能相关的部分内容:

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}
body{ width: 100%; }
header#header { width: 100%; }
header#header #background-image {
  height: 150px;
  background: url(/images/header/silhouette.png) repeat-x;
} 
Run Code Online (Sandbox Code Playgroud)

无论是否应用cssgradients都会发生这种情况 - 真的难倒在这里

html css width

9
推荐指数
1
解决办法
3048
查看次数

在.bashrc环境变量中存储Amazon S3凭据会导致Rails应用程序失败

我正在开发一个使用回形针在Amazon S3上存储东西的rails应用程序.该应用程序托管在Heroku上.我正在开发Ubuntu Karmic.

我要描述的问题发生在开发(在我的localhost上)和生产(在Heroku上).


将S3信誉传递给回形针的标准方法是将它们放入config/s3.yml中,如下所示:

access_key_id: 12345678
secret_access_key: 903490409fdf09fshsfdoif/43432
Run Code Online (Sandbox Code Playgroud)

当我这样做时,一切正常.但这使我很难与其他人分享我的代码,因此Heroku建议了另一种方法 - http://docs.heroku.com/config-vars.

他们建议您将S3_KEY和S3_SECRET放入.bashrc中,如下所示:

S3_KEY=12345678
export S3_KEY
S3_SECRET=903490409fdf09fshsfdoif/43432
export S3_SECRET
Run Code Online (Sandbox Code Playgroud)

然后他们建议您创建config/initializers/s3.yml(注意稍微不同的路径)并将以下内容放入该文件中:

AWS::S3::Base.establish_connection!(
  :access_key_id     => ENV['S3_KEY'],
  :secret_access_key => ENV['S3_SECRET']
)
Run Code Online (Sandbox Code Playgroud)

但是,当我这样做时,paperclip抛出一个摇摆器并吐出以下错误信息:

undefined method `stringify_keys' for #<String:0xb6d6c3f4>

/vendor/plugins/paperclip/lib/paperclip/storage.rb:176:in `parse_credentials'
/vendor/plugins/paperclip/lib/paperclip/storage.rb:138:in `extended'
/vendor/plugins/paperclip/lib/paperclip/storage.rb:137:in `instance_eval'
/vendor/plugins/paperclip/lib/paperclip/storage.rb:137:in `extended'

.... other stuff 
Run Code Online (Sandbox Code Playgroud)

很明显,这一切都在storage.rb模块中开始.单步执行堆栈跟踪:

标记了第176行的parse_credentials方法 - 这是代码中显示的调用:

def parse_credentials creds
  creds = find_credentials(creds).stringify_keys
  (creds[RAILS_ENV] || creds).symbolize_keys
end
Run Code Online (Sandbox Code Playgroud)

parse_credentials方法尝试调用另一个方法find_credentials,这就是我认为问题所在.下面是find_credentials的代码:

def find_credentials creds
    case creds
    when File
      YAML::load(ERB.new(File.read(creds.path)).result)
    when String
      YAML::load(ERB.new(File.read(creds)).result)
    when Hash
      creds
    else
      raise ArgumentError, "Credentials are …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails heroku environment-variables amazon-s3

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

Rails - 通过ajax显示索引和显示操作的结果

我有一个非常简单的Post资源,有两个动作,索引和显示.我的模板包含一个侧栏,其中包含指向每个帖子的链接.我希望侧边栏链接通过ajax 显示其内容(即"show"操作的结果)

我知道有很多优秀的 tuts向你展示如何创建一个用ajax提交的表单,但这次我想用它来显示我的索引的内容并显示没有页面引用的动作

.是否有任何体面的教程可以提供有关如何执行此操作的提示?

我想我需要创建一个show.js.erb文件,并告诉我的索引操作响应js但我有点陷入困境.我不知道在控制器的show动作或show.js.erb中放什么 - 想象我需要做什么有点困难

PS - 使用rails 3.0.7,jquery-1.5

ajax ruby-on-rails

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

有空锚标签可以吗?

我知道如果我想将图像转换为可点击链接,我可以执行以下操作:

<a href="http://twitter.com/username"><img src="icons/twitter.png" /></a>
Run Code Online (Sandbox Code Playgroud)

但我更喜欢使用CSS背景图像,以便我可以拥有悬停状态:

<a class="twitter" href="http://twitter.com/username"></a>

# css
.twitter{display:block; width:16px; height:16px; background:url("twitter.png")}
Run Code Online (Sandbox Code Playgroud)

这工作正常,但我不确定拥有一个什么都不包含的锚链接是完全有效的.Chrome渲染效果很好,FF也是如此,但我不确定其他人是否相同.

我意识到我可以在链接中放入一些文本,并将其隐藏起来text-indent: -9999px,但出于各种 原因我从未喜欢过这种方法.我的代码是否跨浏览器兼容?

html css

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

无法在Rails 5控制器测试中设置会话哈希

根据Rails Edge指南,所有ActionDispatch :: IntegrationTest HTTP请求都带有可选的命名关键字参数:

get post_url, params: { id: 12 }, session: { user_id: 5 }

大.现在,我在控制器测试中得到以下代码:

test 'should redirect from login page if user is logged in' do
  get '/login', session: { user_id: users(:stephen).id }
  assert_redirected_to root_url, 'Expected redirect to root'
end
Run Code Online (Sandbox Code Playgroud)

当我运行它时,我的测试失败,我看到以下弃用警告:

ActionDispatch::IntegrationTest HTTP request methods will accept only
the following keyword arguments in future Rails versions:
params, headers, env, xhr
Run Code Online (Sandbox Code Playgroud)

所以显然它的rails不允许我传递一个名为session的关键字参数.

此外,在功能测试中设置会话的两种旧方法都不再有效:

test "some thing" do
  session[:user_id] = users(:stephen).id
  # …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails ruby-on-rails-5

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

是否可以使用修改nginx配置文件并在Heroku上使用X-Accel-Redirect?

在nginx网站上阅读这篇文章,我有兴趣以Apache或Lighttpd用户可能使用X-Sendfile头来帮助提供大文件的方式使用X-Accel-Redirect头.

我发现的大多数教程都要求你修改nginx配置文件.

  • 我可以修改Heroku上的nginx配置文件吗?如果是,如何修改?

其次,

  • 我在github上发现了这个X-Accel-Redirect插件,看起来它不需要手动更改nginx配置文件 - 它似乎让你在控制器代码中添加重定向位置 - 有谁知道这是否适用于heroku?直到今晚我都无法测试.

注意 - 我已经通过电子邮件向Heroku支持和goncalossilva发送电子邮件,询问他们相同的问题,但我不知道他们何时会回复我.我会回复他们告诉我的任何事情.

ruby-on-rails nginx heroku ruby-on-rails-3

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

Stackoverflow如何通过HTTP保持用户登录?

我注意到stackoverflow只在登录页面上使用SSL,并且可以通过HTTP发布问题/答案.

用户必须登录才能这样做,所以我想知道如果没有使用SSL,stackoverflow如何设法跟踪登录的用户.

目前我正在制作一个rails应用程序,它使用cookie跟踪登录状态.我一直认为你需要SSL来安全地做到这一点.但我是通过HTTP发布的,作为登录用户.

当我运行tcpdump -i eth0 -A然后访问stackoverflow时,我注意到一个名为'usr'的cookie ,并且该cookie以明文传输,没有SSL.如果我通过不安全的连接登录,如无线网吧,黑客/数据包嗅探器可以带我的usr cookie,并重播我的会话吗?

我想避免在我的rails应用程序中使用SSL(因为我的主机充电臂和腿来实现它),所以我想使用与stackoverflow相同的技术.我希望让用户无需SSL即可登录.

我猜这里正在使用数据库(或memcache/redis)会话存储.但是肯定还需要某种cookie吗?为什么这些cookie不必通过SSL发送?是否有其他事情在后台进行,使这些cookie对不同机器上的黑客造成多余影响?

cookies ssl session-cookies session-hijacking

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