试图直接访问MongoHQ:
> mongo mongodb://heroku:mypassword@alex.mongohq.com:10046/myapp
MongoDB shell version: 2.4.3
connecting to: mongodb://heroku:mypassword@alex.mongohq.com:10046/myapp
Tue Jun 4 16:10:09.255 Assertion failure _setName.size() src/mongo/client/dbclientinterface.h 211
0x10017116b 0x100135396 0x100068356 0x100129bab 0x10010f92f 0x10024b2fa 0x139ba3a06362 0x139ba3a0ce93 0x139ba3a400c9 0x139ba3a0c76e
0 mongo 0x000000010017116b _ZN5mongo15printStackTraceERSo + 43
1 mongo 0x0000000100135396 _ZN5mongo12verifyFailedEPKcS1_j + 310
2 mongo 0x0000000100068356 _ZN5mongo16ConnectionString5parseERKSsRSs + 1878
3 mongo 0x0000000100129bab _ZN5mongo17mongoConsExternalEPNS_7V8ScopeERKN2v89ArgumentsE + 187
4 mongo 0x000000010010f92f _ZN5mongo7V8Scope10v8CallbackERKN2v89ArgumentsE + 175
5 mongo 0x000000010024b2fa _ZN2v88internalL30Builtin_HandleApiCallConstructENS0_12_GLOBAL__N_116BuiltinArgumentsILNS0_21BuiltinExtraArgumentsE1EEEPNS0_7IsolateE + 618
6 ??? 0x0000139ba3a06362 0x0 + 21559186056034
7 ??? 0x0000139ba3a0ce93 0x0 + 21559186083475
8 ??? …Run Code Online (Sandbox Code Playgroud) 我无法将供应商资产编译为根文件.
我希望独立提供以下资源(不与其他资产一起打包):
vendor/gems/neo-viz/app/assets/stylesheets/neo-viz.css.scss
vendor/gems/neo-viz/app/assets/javascripts/neo-viz.js.coffee
vendor/gems/neo-viz/app/assets/javascripts/lib/jQuery/jquery-1.6.1.min.js
vendor/gems/neo-viz/app/assets/javascripts/lib/arbor/arbor.js
Run Code Online (Sandbox Code Playgroud)
使用以下行:
config.assets.precompile += %w( jquery-1.6.1.min.js arbor.js neo-viz.js neo-viz.css )
Run Code Online (Sandbox Code Playgroud)
只预编译css文件并使其可用.为什么?
此外,在看到这个问题(在Rails中包含带有config.assets.precompile的子目录中的资产)之后,我尝试了:
config.assets.precompile += %w( jquery-1.6.1.min.js arbor.js neo-viz.js neo-viz.css lib/arbor/arbor.js arbor/arbor.js lib/jQuery/jquery-1.6.1.min.js jQuery/jquery-1.6.1.min.js )
Run Code Online (Sandbox Code Playgroud)
但它没有任何区别.想法?
我有一个部分,有一个布局:
<%= render :partial => 'home/mobile/home', :layout => 'home/mobile/page', :locals => {:page => 'abc2'}%>
Run Code Online (Sandbox Code Playgroud)
布局(page.html.erb)具有不同块的产量,例如:
<div data-role="header">
<%= yield :header %>
</div>
Run Code Online (Sandbox Code Playgroud)
但是,从不使用此yield块,而主级布局文件确实产生了预期的效果.
使用部分布局的命名content_for/yield块是不是不可能?有变通方法吗?
我希望继承 - content_for:header应首先在partial的布局中查找yield:标头,并且失败,即主布局文件.但这种情况并非如此.部分布局的yield:标头被简单地忽略.
按照这篇文章:
http://blog.plataformatec.com.br/2012/01/my-five-favorite-hidden-features-in-rails-3-2/
处理错误的最新方法如下所示:
# application.rb:
config.exceptions_app = self.routes
#routes.rb
match "/404", to: "site#not_found"
Run Code Online (Sandbox Code Playgroud)
但是,他没有说明rails错误应用程序还处理500个错误,422个错误(以及可能还有其他错误传递给这两个页面的事实?)
所以我一起攻击了一个看起来像这样的解决方案:
# routes.rb
rack_error_handler = ActionDispatch::PublicExceptions.new('public/')
match "/422" => rack_error_handler
match "/500" => rack_error_handler
Run Code Online (Sandbox Code Playgroud)
它的好处在于它使我的500页轻量级.
我还应该抓住其他错误吗?我的理解是,虽然500页现在将使用两个机架应用程序,但它仍然可以安全地与主Rails应用程序隔离.这很强吗?
谢谢!
我一直在阅读胡子文档,看起来很酷:https: //github.com/defunkt/mustache
ruby代码和html标记之间有明显的区别.没有开始胡子项目,我的困惑是:如何处理生成标记的ruby?明显的例子是表单助手和link_to,更不用说任何自定义方法了.{{link_to ...}}是否合适(或可能)? - 在标记中包含代码.或者在视图ruby中定义自定义方法:{{whatever_link}}? - 这似乎不干,同样不受欢迎.胜利在哪里?
谢谢!
--Peter
TDD 新手,天啊!
简而言之,这是我想要测试的内容(ruby 库):
account = Twilio::RestAccount.new(ACCOUNT_SID, ACCOUNT_TOKEN)
resp = account.request(
"/#{API_VERSION}/Accounts/#{ACCOUNT_SID}/SMS/Messages",
'POST',
smsInfo
)
Run Code Online (Sandbox Code Playgroud)
这是测试代码尝试:
describe Text do
it "should call the Twilio API with credentials" do
#pending "mocking api although not passed in.."
t = mock(Twilio::RestAccount)
twapi = mock("new twapi").should_receive(:request).and_return(Net::HTTPSuccess)
t.stub(:new).and_return(twapi)
Twilio::RestAccount.should_receive(:new)
sms = Factory.create(:boring_sms)
sms.send_sms
end
end
Run Code Online (Sandbox Code Playgroud)
生成错误: undefined method `request' for nil:NilClass
我采取的方法正确吗?谢谢!
Mongoid在一个habtm上运行.push,它在两个方向上建立了一个habtm关系.虽然删除将#delete一个相关的记录,但没有记录的方法只删除我见过的关系.有没有更好的方法呢?
有没有更好的方法来确保独特性?
has_and_belongs_to_many :following, {class_name: 'User', inverse_of: :followers, inverse_class_name: 'User'}
has_and_belongs_to_many :followers, {class_name: 'User', inverse_of: :following, inverse_class_name: 'User'}
def follow!(user)
self.following.push(user) # this pushes the inverse as well
self.following_ids.uniq!
self.save!
user.follower_ids.uniq!
user.save!
end
def unfollow!(user)
self.following.delete(user.id)
self.save!
user.followers.delete(self.id)
user.save!
end
Run Code Online (Sandbox Code Playgroud) phonegap/callback/cordova在所有平台上都有白名单吗?它是否以相同的方式实现?
我正在使用carrierwave将图像上传到亚马逊s3.这在开发上非常有用,但是当我将它推送到我的服务器(engineyard cloud trial)时却没有.
该过程工作正常,不会抛出任何错误,并返回一个链接.但是,不知何故,实际图像已损坏.
这是一个,例如:https://s3.amazonaws.com/ZenBucket/uploads/goal/photo/30/guinness-toucan.jpg
任何人都可以告诉我它是如何被破坏,或者是什么可以做到这一点?
编辑:部署后的第一个图像上载尝试总是似乎失败500,但错误不会显示在日志中.不确定这是否相关.
编辑2:似乎也发生了蜻蜓宝石而不是载波.
谢谢
Underscore提供方法,节流.从他们的文档:
创建并返回传递函数的新的受限制版本,当重复调用时,每次等待毫秒最多只调用一次原始函数.对于速度限制事件非常有用,这些事件发生得比您能跟上的速度要快.
现在想象一下自动填充表单的情况.这意味着如果在100ms窗口内输入"abc",则只会搜索"a",而不是"bc".
这是对underscore.js的严重疏忽吗?你会建议什么是干净的解决方案?
ajax ×1
amazon-s3 ×1
assets ×1
callback ×1
carrierwave ×1
content-for ×1
cordova ×1
corruption ×1
engineyard ×1
javascript ×1
layout ×1
mobile ×1
mocking ×1
mongodb ×1
mongohq ×1
mongoid ×1
mustache ×1
partials ×1
precompile ×1
routing ×1
rspec ×1
ruby ×1
templates ×1
testing ×1
throttling ×1
timeout ×1
twilio ×1
whitelist ×1