我正试图在运行Mongo的Ubuntu服务器上释放一些空间.我已经附加了一个新的,空的8GB容量,并有空间移动东西.
我在/ var/lib/mongodb/journal/prealloc中有几个大(1GB)文件,删除它们或移动它们是否安全?如果我可以移动它们 - 任何人都可以给我一个关于如何为Mongo做这个的指针吗?
有没有办法在Twitter的推文按钮上注册回调?我希望能够跟踪我网站上的哪些特定用户发布了链接.我无法添加onClick事件,因为它是一个跨域iFrame.还有其他想法吗?
我有一个我无法丢弃的集合,我假设其名称中的" - "是一个特殊字符.在MongoDB中,逃避特殊字符的最佳方法是什么?
> db.tweets.drop();
true
Run Code Online (Sandbox Code Playgroud)
但
> db.tweets-old.drop();
ReferenceError: old is not defined (shell):1
Run Code Online (Sandbox Code Playgroud)
我试图用引号(单引号和双引号)和斜线来逃避,但没有任何作用.
在Objective-C中,我有一个简单的代码块,每次按下按钮时都会递增一个计数器.我的日志,甚至是界面的更新,都显示增量为4而不是1.这只是我格式化的显示问题(我正在使用%d)或其他我错过的东西?我的猜测在于"%d",但我是Objective-C的新手,并不确定.(注意,我也试过"counter + = 1;",结果相同.
int counterValue = 0;
NSLog(@"Count at init: %d",counterValue);
...
-(IBAction)pushButton {
NSLog(@"Count (Pre-Push) = %d",counterValue);
counterValue++;
NSLog(@"Count (Post-Push) = %d",counterValue);
}
Run Code Online (Sandbox Code Playgroud)
输出如下:
2010-02-20 18:39:39.125 My App[37536:207] Count at init: 0
2010-02-20 18:39:39.845 My App[37536:207] Count (Pre-Push) = 0
2010-02-20 18:39:39.846 My App[37536:207] Count (Post-Push) = 4
2010-02-20 18:39:40.165 My App[37536:207] Count (Pre-Push) = 4
2010-02-20 18:39:40.166 My App[37536:207] Count (Post-Push) = 8
2010-02-20 18:39:40.727 My App[37536:207] Count (Pre-Push) = 8
2010-02-20 18:39:40.728 My App[37536:207] Count (Post-Push) …
Run Code Online (Sandbox Code Playgroud) 我只是掌握了Rails控制台,并发现它可以快速测试我的类中的方法.我知道我可以对我的模型进行更改
> reload!
Run Code Online (Sandbox Code Playgroud)
抓住这些更新,但有时我会发现它似乎没有重新加载我的最新代码.Rails是否在某处缓存代码?
在一个非常简单的伪示例中,我可能在第100行上有错误的代码:
100: u = User.alll
Run Code Online (Sandbox Code Playgroud)
在Rails控制台中,当我运行此方法时,我可能会收到类似于以下内容的错误:
NoMethodError: undefined method `alll' for User:Class ... on line 100
Run Code Online (Sandbox Code Playgroud)
然后修改我的代码,修复错误
100: u = User.all
Run Code Online (Sandbox Code Playgroud)
然后重新加载:
> reload!
Run Code Online (Sandbox Code Playgroud)
然后,当在这个类中调用具有正确代码的方法时,它仍会说
NoMethodError: undefined method `alll' for User:Class ... on line 100
Run Code Online (Sandbox Code Playgroud)
如果清楚,错误是固定的,并且违规行甚至不再在第100行.有没有办法强制/硬重置"重新加载!" 命令?
我是新手测试,并且在模型或控制器中遇到麻烦.
我已经从工厂创建了一个用户(使用FactoryGirl,如果这有所不同),并且我很确定create方法因保存时的验证而失败.但是,我很想知道如何调试在测试期间实例化的模型.
我试过了:
user.inspect
puts user
raise user.to_yaml
Run Code Online (Sandbox Code Playgroud)
(后者工作,但停止执行其余的测试,并且不显示验证错误 - 它只证明我试图实例化的模型的存在或不存在.)
除了将模型作为错误提升之外,在测试过程中没有调试输出,而我唯一能做的就是为我的测试数据库留下日志,看看那里发生了什么,但最好看起来很笨拙.你会用什么方法来完成我追求的目标?
谢谢你的任何指示
如果我有一个String类型的List,
scala> val items = List("Apple","Banana","Orange","Tomato","Grapes","BREAK","Salt","Pepper","BREAK","Fish","Chicken","Beef")
items: List[java.lang.String] = List(Apple, Banana, Orange, Tomato, Grapes, BREAK, Salt, Pepper, BREAK, Fish, Chicken, Beef)
Run Code Online (Sandbox Code Playgroud)
如何n
根据某个字符串/模式("BREAK"
在本例中)将其拆分为单独的列表.
我已经想过要找的位置"BREAK"
与indexOf
,或分割的列表方式,或者采用类似的方法有takeWhile (i => i != "BREAK")
,但我不知道是否有更好的方法?
如果它有帮助,我知道items
列表中只有3组项目(因此有2个"BREAK"
标记).
我有一个可选的URL参数,比如我需要检查的"user_id".我知道我可以使用
if params.has_key?(:user_id) ...
根据user_id
参数的存在来做事情,但有时候user_id
没有值传递,所以我想完全忽略它.为了解决这个问题,我发现自己做了很多 - 但必须有一个更好的方法,对吧?
if params[:user_id] && !params[:user_id].empty?
# Do stuff
end
Run Code Online (Sandbox Code Playgroud)
它看起来真的很难看.
我有一个带有的PostgreSQL表enum
,它由以下内容创建:
CREATE TYPE file_status AS ENUM ('new', 'uploading', 'queued', 'processing', 'done', 'failed');
Run Code Online (Sandbox Code Playgroud)
和相关的领域
CREATE TABLE files ( ...
status file_status NOT NULL,
...
);
Run Code Online (Sandbox Code Playgroud)
使用Scala 2.10和Typesafe Slick 1.0.1,我已经创建了我的Files表的映射,除了status
字段之外,它的工作非常好,这需要自定义file_status
类型,一个字符串.
def status = column[FileStatus]("status")
Run Code Online (Sandbox Code Playgroud)
我一直在玩Slick的TypeMapper,但还是不知道如何让它工作:
sealed trait FileStatus
implicit val fileStatusMapper: TypeMapper[String] = base[FileStatus, String](
s => s.toString,
f => f(FileStatus)
)
Run Code Online (Sandbox Code Playgroud)
我收到错误:类型不匹配; 发现:models.Files.FileStatus.type必需:Int
为什么需要Int?是因为TypeMapper吗?我也试过了
...
f => f.toString
// type mismatch; found : String required: models.Files.FileStatus
f => f
// type mismatch; found : …
Run Code Online (Sandbox Code Playgroud) 我正在使用Spray API(spray-client)来访问内部Solr URL,我希望能够将响应解析为Scala案例类.
如果我只是期望和HTTPResponse,我得到一个值,但是当我尝试将它编组到我的case类中时,它失败了(我不能生成除null()以外的消息,因为我正在使用匹配和显然没有得到正确的测试用例.)
我认为我的一些问题是它以数据的形式返回数据text/plain
而不是application/json
.当我期待HttpResponse而不是我的案例类时,
val f: Future[HttpResponse] =
(IO(Http) ? Get("http://1.2.3.4:8983/solr/collection1/select?q=*%3A*&wt=json")).mapTo[HttpResponse]
Run Code Online (Sandbox Code Playgroud)
我明白了:
HttpResponse(200 OK,HttpEntity(text/plain; charset=UTF-8,
{
"responseHeader":{"status":0,"QTime":65,"params":{"q":"*:*","wt":"json"}},
"response":{"numFound":147437873,"start":0,"maxScore":1.0,"docs":
[
{"guid":"TLQ0jVlMYCXQrYkBIZHNXfMmifw+3","alias":["greg"],"_version_":1440942010264453120},
{"guid":"TQsDY1ZG7q+Ne5e6F7qAUhFyomSH9","_version_":1440942010296958976},
{"guid":"TzWB5grOBAJJZcAQDo2k9xBUVGPFr","alias":["spark"],"_version_":1440942010298007552},
{"guid":"T0judCG4UI9RYqDDQVcn+gyZEU7Bb","alias":["zombie"],...),List(Connection: close, Content-Type: text/plain; charset=UTF-8),HTTP/1.1)
Run Code Online (Sandbox Code Playgroud)
但是当我改变它以期待我的案例类时,我无法比拟.那么,我如何编组它返回到Scala案例类的数据呢?这是我尝试过的:
case class SolrParams(q: String, wt: String)
case class SolrResponseHeader(status: String, qtime: String, params: SolrParams)
case class SolrDoc(guid: String, alias: List[String], version: String)
case class SolrResponse(numFound: Long, start: Long, maxScore: String, docs: List[SolrDoc])
case class SolrApResult(responseHeader: SolrResponseHeader, response: SolrResponse)
object SolrJsonProtocol extends DefaultJsonProtocol {
implicit val paramsFormat = …
Run Code Online (Sandbox Code Playgroud) 我有一个 RoR 应用程序,它使用大量单独的 .less 文件来构建我的样式。我有一个主 .less 文件 (config.less),其中包含其他文件使用的变量。我可以手动浏览每个子文件并添加@import
语句,但我有很多子文件,这似乎不是最好的方法。如果我使用的话,是否有设置特定顺序的标准方法*= require_tree .
?
我尝试将上面的 require 包含require_tree
在内
...
*= require 'less/config'
*= require_tree .
Run Code Online (Sandbox Code Playgroud)
但我仍然在后续的 .less 文件中收到错误,抱怨它找不到值config
variable @base is undefined
(in /Users/me/project/app/assets/stylesheets/less/mixins.less)
Run Code Online (Sandbox Code Playgroud) 我有一个使用 Typesafe Slick (v 1.0.1) 的 Play (v 2.2.0) 应用程序,我正在尝试编写一个测试 (specs2) 来为 PostgreSQL 数据库提供种子,然后调用各种控制器操作以验证数据的存在。在我的测试中,我有:
"Countries" should {
"initialize" in {
running(FakeApplication(additionalConfiguration = inMemoryDatabase())) {
AppDB.database.withSession {
implicit session: Session =>
AppDB.dal.create
AppDB.dal.seedForTests
AppDB.dal.Countries.findAll().size must be_>=(1)
}
}
}
Run Code Online (Sandbox Code Playgroud)
就其本身而言,这很好用。但是,当我添加另一个测试操作时,例如:
"respond to Index()" in {
val result = controllers.Countries.index()(FakeRequest())
status(result) must equalTo(OK)
}
Run Code Online (Sandbox Code Playgroud)
我的测试失败并显示以下消息:
SQLException: Attempting to obtain a connection from a pool that has already been shutdown.
Run Code Online (Sandbox Code Playgroud)
堆栈跟踪的相关部分是:
[error] SQLException: Attempting to obtain a connection from a pool that has …
Run Code Online (Sandbox Code Playgroud)