小编at.*_*at.的帖子

在Ruby中的第一个=符号后获取子字符串

纯粹出于好奇,是否有更优雅的方法来简单地获取字符串中第一个=符号后的子串?以下作品回馈name=bob:

string = "option=name=bob"
string[string.index('=')+1..-1]
Run Code Online (Sandbox Code Playgroud)

它只是感觉不是非常Ruby.这也有效:

string.split('=', 2)[1]
Run Code Online (Sandbox Code Playgroud)

再次,不是很优雅,特别是因为split做了额外的不必要的工作.正则表达式是答案吗?我觉得这对于在字符串中查找单个字符位置的简单性来说有点过分:

string.match('=(.*)')[1]
Run Code Online (Sandbox Code Playgroud)

我不得不想象这是一种极为常见的情况,是不是有string.after('=')类型方法?Ruby on Rails是否提供类似这样的事情,因为在网络上使用这种操作的频率?

更新:忘记在找不到符号时提及情况,nil或者返回空字符串.但是正则表达式机制和.index方法需要额外检查(因此不那么优雅).

ruby string

42
推荐指数
3
解决办法
5万
查看次数

查看postgresql转储文件的简便方法?

我有大量的postgresql转储文件,我需要仔细阅读数据.我是否必须逐个安装Postgresql并将其中的每一个"恢复"到新的数据库中?或者我希望有一个postgresql客户端可以简单地打开它们,我可以查看数据,甚至可以运行一个简单的SQL查询?

转储文件全部来自Postgresql v9.1.9服务器.

或者也许有一个工具可以轻松地使数据库与转储文件"连接"?

更新:这些不是文本文件.它们是二进制的.它们来自Heroku的备份机制,这就是 Heroku关于如何创建备份的说法:

PG备份使用本机pg_dump PostgreSQL工具来创建其备份文件,这使得导出到其他PostgreSQL安装变得微不足道.

database pg-dump postgresql-9.1

38
推荐指数
4
解决办法
4万
查看次数

如何在JQuery中复制/克隆散列/对象?

我在Javascript中有一个简单的对象(或哈希):

var settings = {
  link: 'http://example.com',
  photo: 'http://photos.com/me.jpg'
};
Run Code Online (Sandbox Code Playgroud)

我需要它的副本.是否有一种settings.clone()类型方法会给我另一个具有相同属性的对象?我正在使用jQuery,很高兴使用jQuery实用程序方法(如果存在).

javascript jquery clone copy javascript-objects

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

如何使Facebook评论小部件流畅?

是否有可能使Facebook的评论小部件流畅?他们的文档显示了fb:commentsxfbml或iframe 的宽度字段,其指定为:

  • width - 插件的宽度(以像素为单位).建议的最小宽度:400px.

也许这不可能......

css comments facebook xfbml facebook-social-plugins

35
推荐指数
6
解决办法
4万
查看次数

在Rails/ActiveRecord列名中使用问号字符

为了保持Ruby在布尔方法中使用问号的习惯(例如person.is_smart?),我想对Rails中的ActiveRecord字段做同样的事情:

rails generate model Person is_smart?:boolean
Run Code Online (Sandbox Code Playgroud)

我实际上没有运行上述声明.我假设数据库字段中不能有问号.rails会适当地处理这个吗?简单地从模型中留下问号是最佳做法吗?

使用Rails 3.2.8

ruby activerecord ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.2

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

如何知道用户是否点击了Javascript onbeforeunload对话框上的取消?

当有人试图离开特定页面而没有保存他们的工作时,我弹出一个对话框.我使用Javascript的onbeforeunload事件,效果很好.

现在,当用户在出现的对话框上单击"取消"时,我想运行一些Javascript代码(说他们不想离开页面).

这可能吗?我也在使用jQuery,所以可能有像我之前可以绑定的beforeunloadcancel这样的事件吗?

更新:如果用户选择取消,则实际上是将用户保存并指向不同的网页

javascript jquery onbeforeunload javascript-events

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

仅使用HTML和/或CSS的曲线

我需要在HTML中添加连接图表节点的曲线.我想使用HTML和/或CSS创建它们.即使并非所有浏览器都支持我需要的功能(特别是不关心IE8及以下),我对CSS3也没问题.以下是我可以使用的解决方案:

  • canvas或svg - 不喜欢它,因为当我有数百甚至数千个这些对象漂浮在我的好节点之间时,我必须处理浏览器差异而不确定性能
  • image - 我需要一些荒谬的图像来处理所有可能的曲线,并且在放大和缩小时图像根本无法很好地缩放
  • div有一个css border-radius和另一个div,它覆盖了我们不想要的行部分 - 不担心IE8及以下不支持这个,但这是一个丑陋的黑客,我不能得到生成的曲线任何像背景或其他线条重叠的东西.我可以吗?

我错过了哪些选择?是否可以使用一个只有1个角可见的边界半径的div(并且可以在IE8及以下的所有浏览器上工作)?

css html5 css3

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

如何使div的背景颜色半透明?

我只希望我的div中的白色背景颜色半透明大约50%.内容应该是完全不透明的.这样做的正确方法是什么?我想象当我查看背景CSS属性时,我会找到一个不透明度设置,但没有.不关心IE6.

更新:使用下面给出的rgba解决方案与 CSS3PIE的解决方案一起解决,以使rgba在IE浏览器中运行.

css opacity css3

31
推荐指数
3
解决办法
7万
查看次数

可以使用Amazon S3/CloudFront和HTML5播放器流式传输视频吗?

我想使用HTML5视频播放器并流式传输视频.S3/CloudFront可以实现吗?我了解亚马逊使用RTMP流媒体协议,而HTML5的video标签不支持RTMP.有没有办法用HTML5播放器流式传输视频?

html5 rtmp amazon-s3 video-streaming html5-video

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

可以在Rails/ActiveRecord中指定允许带NULL的唯一索引吗?

我想在列上指定唯一索引,但我还需要允许NULL值(多个记录可以包含NULL值).使用PostgreSQL进行测试时,我发现我可以拥有一条带有NULL值的记录,但下一个会导致问题:

irb(main):001:0> u=User.find(5)
  User Load (111.1ms)  SELECT "users".* FROM "users" WHERE "users"."id" = $1 LIMIT 1  [["id", 5]]
=> #<User id: 5, email: "a@b.com", created_at: "2013-08-28 09:55:28", updated_at: "2013-08-28 09:55:28">
irb(main):002:0> u.email=nil
=> nil
irb(main):003:0> u.save
   (1.1ms)  BEGIN
  User Exists (4.8ms)  SELECT 1 AS one FROM "users" WHERE ("users"."email" IS NULL AND "users"."id" != 5) LIMIT 1
   (1.5ms)  ROLLBACK
=> false
Run Code Online (Sandbox Code Playgroud)

因此,即使数据库允许,Rails也会首先检查是否User存在具有不同id且email列设置为NULL.有没有一种方法,不仅数据库可以允许它,但Rails也不会像上面那样先检查?

这个想法是用户不必输入电子邮件,但如果他们这样做,我需要能够通过他们的电子邮件找到用户.我知道我可以创建另一个模型来将用户与电子邮件相关联,但我更愿意以上述方式进行操作.

更新:这是我为添加email列而创建的迁移代码:

class …
Run Code Online (Sandbox Code Playgroud)

postgresql activerecord ruby-on-rails ruby-on-rails-4 rails-activerecord

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