小编Gar*_*ett的帖子

观察Objective-C中的文件或文件夹

收听文件夹或文件以查看是否已保存或是否添加了新文件的最佳方法是什么?

cocoa objective-c observer-pattern

20
推荐指数
2
解决办法
8862
查看次数

Ruby功能开关/功能翻转器

我受到了FlickrDisqus如何使用功能开关的启发.他们都在博客上写了他们以及他们如何在他们的两个开发博客上工作.

我只是想知道是否有一个Ruby宝石我缺少或者是否有人知道在Ruby中这样做的方法?如果没有任何东西,我希望自己制作并在野外发布.但我只是想在这里问一下,因为我无法找到任何类似于Flickr和Disqus实现的东西.

ruby rubygems ruby-on-rails sinatra

17
推荐指数
1
解决办法
4221
查看次数

应用程序仪表板查看逻辑

在我的应用程序中,我想在登录时提供类似屏幕的仪表板,以便了解正在发生的事情.我有大约4个模型需要从中收集数据并按顺序排序.我的问题是知道动作,这样我就可以得到每个模型的特定字段.

这里有一些关于如何去做的想法,但我觉得它们不是最好的和不完整的.

  1. 我有一个单独的模型,其中包含:model,associated_id,action."Post,1,created"就是一个例子.

  2. 有4个不同的数组,并通过说明将它们与正确的顺序合并created_at.

最好的方法是什么?我在下面提供了一个例子:

替代文字

ruby dashboard ruby-on-rails

7
推荐指数
2
解决办法
921
查看次数

MongoMapper父继承

我试图通过使用MongoMapper的类继承来获得更好的组织结果,但是遇到了一些麻烦.

class Item
  include MongoMapper::Document

  key :name, String
end

class Picture < Item
  key :url, String
end

class Video < Item
  key :length, Integer
end
Run Code Online (Sandbox Code Playgroud)

当我运行以下命令时,它们并没有完全返回我期望的内容.

>> Item.all
=> [#<Item name: "Testing", created_at: Sun, 03 Jan 2010 20:02:48 PST -08:00, updated_at: Mon, 04 Jan 2010 13:01:31 PST -08:00, _id: 4b416868010e2a04d0000002, views: 0, user_id: 4b416844010e2a04d0000001, description: "lorem?">]
>> Video.all
=> [#<Video name: "Testing", created_at: Sun, 03 Jan 2010 20:02:48 PST -08:00, updated_at: Mon, 04 Jan 2010 13:01:31 PST -08:00, _id: 4b416868010e2a04d0000002, …
Run Code Online (Sandbox Code Playgroud)

mongomapper

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

开发模式下的异常页面渲染时间超过15-30秒,为什么会这样?

我正在使用Rails 3 beta 4,出于某种原因,我有每个例外需要15-30秒才能显示.这是我的踪迹:

Started GET "/something/something/approvals/new" for 127.0.0.1 at Thu Jun 24 21:17:12 -0400 2010
  SQL (1.8ms)  describe `approvals_users`
  SQL (24.6ms)  describe `clients_users`
  SQL (1.4ms)  describe `agencies_users`
  SQL (1.2ms)  describe `clients_users`
  SQL (1.2ms)  describe `approvals_users`
  SQL (1.7ms)  describe `permissions_users`
  Processing by ApprovalsController#new as HTML
  Parameters: {"project_id"=>"tricked", "client_id"=>"deez-nutz"}
  SQL (1.4ms)  describe `agencies_users`
  Agency Load (0.4ms)  SELECT `agencies`.* FROM `agencies` WHERE (`agencies`.`subdomain` = 'subdomain') LIMIT 1
  Plan Load (0.3ms)  SELECT `plans`.* FROM `plans` WHERE (`plans`.`id` = 3) LIMIT 1
  User Load …
Run Code Online (Sandbox Code Playgroud)

activerecord ruby-on-rails exception

6
推荐指数
2
解决办法
1083
查看次数

将重定向发送到特定端口

我有一个正在侦听端口9000的Rails应用程序服务器,并且正在通过haproxy进行调用.来自该服务器的所有重定向都将通过端口9000重定向,当它们应该在端口80上发送回来时.

我正在使用haproxy + nginx +乘客的组合.有没有办法确保所有重定向都通过端口80发送,无论实际服务器正在侦听哪个端口?

我不在乎它的haproxy,nginx,Passenger或Rails是否会发生变化.除非另有说明,否则我只需要确保大多数请求都被发送回端口80.

谢谢!

ruby-on-rails passenger nginx haproxy

5
推荐指数
1
解决办法
4973
查看次数

何时使用嵌入式文档?

我试图弄清楚如何为我正在处理的网站布置我的数据库.这是我的模特:

class User
  include MongoMapper::Document

  // keys here

  many :items
  many :likes
end

class Item
  include MongoMapper::Document

  key :name, String, :required => true

  many :likes
end

class Like
  include MongoMapper::EmbeddedDocument

  key :user_id, String, :required => true
end
Run Code Online (Sandbox Code Playgroud)

我相信Like应该嵌入某个地方,但我很难选择一个,因为我想要摆脱它的功能.

user = User.first
user.likes // should print out all the Items he liked

item = Item.first
item.likes // so I can count how many people like that item
Run Code Online (Sandbox Code Playgroud)

虽然使用EmbeddedDocument时会出现问题,但是您会丢失find其他有用的方法,并且不能将它嵌入到两个模型中.所以只有它Item,我需要运行它(但不能):

item = Item.first
item.likes.find_by_user_id(User.first._id)
Run Code Online (Sandbox Code Playgroud)

find_by_user_id将抛出未定义的方法.所以如果我把它嵌入我的中User …

mongodb mongomapper

4
推荐指数
1
解决办法
3335
查看次数

欺骗Rails应用程序认为它在不同的端口上

我有一个在端口8080上运行的Rails应用程序,我需要欺骗它认为它在端口80上运行.

我在端口上运行Varnish 80并将请求转发到端口上的nginx 8080,但是当用户尝试使用OmniAuth登录并且Devise gem生成一个URL以重定向回服务器时,它认为它在端口8080上然后用户将看到.

有没有办法欺骗Rails应用程序将端口硬编码为80(我认为这是一个不好的做法),或者让nginx转发请求,就好像它在端口80上运行一样?

由于我没有在Rails应用程序上运行nginx代理,所以我想不出一种欺骗端口的方法.

有没有人之前遇到过这个问题,如果有的话需要什么样的配置才能修复它?

提前致谢!

编辑:nginx和Varnish都在同一台服务器上运行.

port ruby-on-rails nginx varnish

4
推荐指数
1
解决办法
2443
查看次数

在查找上预加载模型关联

现在我正在尝试调用我的模型,并将其结果吐出为json/xml格式.我唯一的问题是,我的数据库关联没有被加载或查询.

通常,我可以运行它

@campaign = Campaign.find(:all)

然后通过调用@campaign[0].hits来获取点击次数has_many :hits.

但是如果你调试输出,它只调用表上的列.你会如何将它与你的查询放在一起?

例如:

  <campaign>
    <category>website</category>
    <created-at type="timestamp">2009-01-24 14:49:02 -0800</created-at>
    <end-at type="date">2009-01-24</end-at>
    <id type="integer">14</id>
    <is-watched type="integer">1</is-watched>
    <name>Lets</name>
    <slug>c5334415da5c89384e42ce6d72609dda</slug>
    <start-at type="date">2009-01-24</start-at>
    <user-id type="integer">5</user-id>
  </campaign>

然后让它改为添加另一列,但是有点击次数.

  <campaign>
    <category>website</category>
    <created-at type="timestamp">2009-01-24 14:49:02 -0800</created-at>
    <end-at type="date">2009-01-24</end-at>
    <id type="integer">14</id>
    <is-watched type="integer">1</is-watched>
    <name>Lets</name>
    <slug>c5334415da5c89384e42ce6d72609dda</slug>
    <start-at type="date">2009-01-24</start-at>
    <user-id type="integer">5</user-id>
    <hits type="integer">123412</hits>
  </campaign>

activerecord ruby-on-rails

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

执行方法无延迟

我的视图控制器中有一些方法可以加载以备将来的操作,我在一个方法中调用它们,即:

- (void) updateSongInformation {
     artistName.text = @"Testing";
     [self setupEmail];
     [self checkStatus];
}
Run Code Online (Sandbox Code Playgroud)

如果我取出最后两行,UILabel会立即更新.有没有办法在后台运行最后2个方法,这样用户体验不会延迟?

iphone objective-c

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