小编Dan*_*ark的帖子

Rails迁移:检查存在并继续进行?

我在迁移中做了这样的事情:

add_column :statuses, :hold_reason, :string rescue puts "column already added"
Run Code Online (Sandbox Code Playgroud)

但事实证明,虽然这适用于SQLite,但它不适用于PostgreSQL.看起来如果add_column爆炸,即使捕获了Exception,事务也已经死了,因此Migration不能做任何额外的工作.

是否有任何非DB特定方法来检查列或表是否已存在?如果做不到的话,有没有办法让我的救援块真正起作用?

migration ruby-on-rails

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

点图语言 - 如何制作双向边?

这是我的点图的一个非常简化的例子:

strict digraph graphName {
A->B
B->A
}
Run Code Online (Sandbox Code Playgroud)

这创造了 替代文字

相反,我希望在A和B之间显示一条边,但是有一个双箭头.我知道如何将双箭头作为全局选项:

strict digraph graphName {
  edge [dir="both"]
A->B
B->A
}
Run Code Online (Sandbox Code Playgroud)

但这看起来非常难看,而且我的所有优势都不应该是双头的.

替代文字

如果我对图形进行更多处理并自己检测双引用并用单个边缘替换两条边缘,则看起来没问题.但我宁愿不必做这个额外的步骤

strict digraph graphName {
A->B [dir="both"]
}
Run Code Online (Sandbox Code Playgroud)

替代文字

更好的解决方案?

graph dot graphviz

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

修剪Git提交/压缩Git历史

我每隔几分钟就会将我的代码检查到一个Git分支中,并且评论最终会变成"Everything broken again again"和其他荒谬.

然后,每隔几分钟/小时/天,我会做一个真正的评论,比如"修正了第22,55号错误".我如何区分这两个概念?我希望能够删除所有我的频繁提交,然后离开严肃的提交.

git branch

66
推荐指数
3
解决办法
1万
查看次数

add_column用于引用(Rails)

我有以下Rails迁移工作完美(删除不相关的部分):

create_table :comments do |t|
  t.text :body
  t.references :post
end
Run Code Online (Sandbox Code Playgroud)

现在我想author在我的comments表中添加一个列(这是用户的用户ID),但我不知道该怎么做(我很想用a编写特定于MySql的语法execute).

我一直在看add_column 这里没有提到references.我实际上找到了TableDefinition#引用,但我不知道如何将它与add_column语句一起使用.

这可能吗?另外,对于MySql,"引用"功能是否真的没有在表之间建立关系?

schema ruby-on-rails

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

NSAssert与断言:您使用哪种,何时使用?

我最近读了两篇非常有趣的建议:

  1. 在对StackOverflow回答的评论中,@ Mike Weller说要在生产代码中保留你的断言......性能受到了什么影响,真的吗?有什么理由不让他们进去吗?
  2. 文森特·盖博的博客,他说,你应该更喜欢assertNSAssert......没有任何理由不使用assert?(这不是字母:))

assert objective-c

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

"在这台电脑上记住我" - 它应该如何运作?

查看Gmail的Cookie,很容易看到存储在"记住我"cookie中的内容.用户名/一次访问令牌.在用户名是秘密的情况下,它可以以不同的方式实现.但无论如何......事情的安全性不是很高:你偷走了饼干而你已经准备好了.

我的问题是在功能方面,但是你什么时候擦拭他们的访问权限?如果用户登录而未在另一台计算机上单击"记住我",是否应该在所有计算机上使其访问权限无效?我问的是传统上如何实现它,以及它应该如何实现.

security password-protection remember-me

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

在PHP中声明变量类型?

我试图让我的Netbeans用PHP自动完成,我了解到这段代码在PHP中是有效的:

function blah(Bur $bur) {}
Run Code Online (Sandbox Code Playgroud)

几个问题:

  1. 这实际上对我可以传递给blah方法的变量类型施加了任何限制吗?
  2. 如果这只是为了帮助IDE,那对我没问题.如果我不在函数中,如何在PHP中声明变量的类型?

php variable-types

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

Xcode:可以为Protocol接口所需的方法自动创建存根吗?

来自Eclipse/Java背景,我最喜欢的功能之一是能够快速存根接口所需的所有方法.在Eclipse中,我可以从源菜单中选择"覆盖/实现"来为接口的任何方法生成存根方法.

我想在Objective-C中做同样的事情.例如,如果我声明一个实现'NSCoding'协议的类,我想让Xcode自动生成实现此协议所需的方法.令我感到沮丧的是,我正在尝试实现的每个协议都需要查找然后复制/粘贴所需方法的签名.

我一直试图找出这是否可行,但还没有找到任何有希望的东西.这可能在XCode中吗?

ide xcode protocols interface objective-c

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

HTML正文中的样式和脚本标签......为什么不呢?

[这与此问题有关,但不是因为它不是关于电子邮件.]

在许多情况下 - 特别是在使用CMS或其他人的框架时,将<style>标签和<script>标签嵌入到<body>比在框架中更容易<head>.这似乎适用于IE6,IE7(Windows),Firefox 3.x和Safari(OS X).

严格来说,这是错的吗?如果是的话,它会带来什么负面影响......除了在一些客户中完全被忽视之外?

注意:很高兴每个人都想谈论DRY和集中风格.想象一下我想在文档中使用样式标签,因为它们不是全球性的,并且我不能在每页基础上访问头部.无论出于何种原因,无论是网站的页面差异,还是每个段落的差异或其他原因.我对跟踪和改变很难感兴趣.我担心在体内使用风格可能会产生什么后果.

你集中了那些核心的东西.中央样式表中的其他一切都很臃肿.

html syntax

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

在ARC中归零弱引用

如果我读到Mike Ash的"归零弱引用"文章是正确的,那么弱引用就像assign没有ARC的引用一样.但是,如果引用的对象被释放,而不是获得"悬空指针"(意味着指向解除分配的对象的指针),则指针将设置为nil.

这是正确的吗,这是否会在标记的任何财产weakassign(当ARC处于活动状态时)发生?

如果这是正确的,这将消除很多SIGABRT.

objective-c clang automatic-ref-counting

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