有没有办法在带有对象的ArrayList中实现二进制搜索?在此示例中,ArrayList将使用字段"id"进行排序.
class User{
public int id;
public string name;
}
ArrayList<User> users = new ArrayList<User>();
sortById(users);
int id = 66
User searchuser = getUserById(users,id);
Run Code Online (Sandbox Code Playgroud)
如果我应该使用二进制搜索返回具有指定id的用户,那么"User getUserById(ArrayList users,int userid)"如何?这甚至可能吗?
假设我有以下限制在特定子域的路由:
App::Application.routes.draw do
constraints :subdomain => "admin" do
scope :module => "backend", :as => "backend" do
resources :signups
root :to => "signups#index"
end
end
constraints :subdomain => "www" do
resources :main
root :to => "main#landing"
end
end
Run Code Online (Sandbox Code Playgroud)
我的问题是root_url和backend_root_url两个返回对当前子域名的URL:"HTTP:// 当前的子域 .lvh.me /"而不是特定的资源子域.我想root_url返回"http:// www .lvh.me /"并backend_root_url返回"http:// admin .lvh.me /"(子域下所有资源的行为应该相同).
我试图在rails 3.2中通过在各个地方设置url选项来实现这一点,一个是应用程序控制器中的url_options:
class ApplicationController < ActionController::Base
def url_options
{host: "lvh.me", only_path: false}.merge(super)
end
end
Run Code Online (Sandbox Code Playgroud)
也许我需要手动覆盖url助手?我将如何处理(访问路线等)?
编辑:我能够使用root_url(:subdomain =>"admin")获得正确的结果,无论当前的子域如何,都返回"http:// admin .lvh.me /".但是,我宁愿不必在代码中指定这一点.
index.php文件:
<html manifest="/cache.manifest">
Run Code Online (Sandbox Code Playgroud)
cache.manifest
CACHE MANIFEST
CACHE:
/img.png
FALLBACK:
/ /offline.html
NETWORK:
*
Run Code Online (Sandbox Code Playgroud)
一切都很好,除了index.php文件本身被提取到缓存(在chrome中测试).我是否可以禁用指定清单的文件的缓存,以便只缓存img.png?
谢谢
我有一台服务器位于example.com运行apache,提供我的静态html文件.
我也有一个json服务位于api.example.com运行python与cherrypy.
用户请求example.com并获取索引html页面.在那个页面上,我使用jquery向json服务发出ajax请求.document.domain返回example.com
$.ajax({
type: 'GET',
url: 'http://api.example.com/resource/',
dataType: 'json',
success: successCallback,
error: errorHandler
});
Run Code Online (Sandbox Code Playgroud)
但是,我无法在firebug中看到ajax请求的响应主体.这让我相信浏览器(FF)不支持这一点.
实现这一目标的最佳方法是什么?如果可能的话,我宁愿不在example.com的apache后端使用任何代理.
有没有办法用C模拟Linux中的按键?
在我的具体情况下,我使用的是Ubuntu 9.04并需要一个简单的应用程序,在启动时调用"暂停"按钮.这将在Firefox中使用Javascript刷新iframe.
Url帮助程序(例如root_url)在app控制器和rspec示例中返回不同的主机名.我已成功地在我的rails应用程序中为url helpers设置域,如下所示:
class ApplicationController < ActionController::Base
def default_url_options
{host: "foo.com", only_path: false}
end
end
Run Code Online (Sandbox Code Playgroud)
例如,root_url在应用程序中输出"http://foo.com/",但在我的请求规范中输出"http://example.com".在rails 3.2中全局应用这些url选项的建议方法是什么,以便它们影响我的规范?网址选项不需要是动态的.
我在rails 3.1中设置了独角兽,http流式传输工作直到我启用Rack :: Deflater.无论是否使用Rack :: Chunked,我都试过了.在卷曲中,我可以看到我在Chrome中的响应,我得到以下错误:ERR_INVALID_CHUNKED_ENCODING
其他浏览器(firefox,safari)以及开发(osx)和生产(heroku)之间的结果相同.
config.ru:
require ::File.expand_path('../config/environment', __FILE__)
use Rack::Chunked
use Rack::Deflater
run Site::Application
Run Code Online (Sandbox Code Playgroud)
unicorn.rb:
listen 3001, :tcp_nopush => false
worker_processes 1 # amount of unicorn workers to spin up
timeout 30 # restarts workers that hang for 30 seconds
Run Code Online (Sandbox Code Playgroud)
控制器:
render "someview", :stream => true
Run Code Online (Sandbox Code Playgroud)
谢谢你的帮助.
我正在尝试在rails 3.1("first_name")中自定义(翻译)活动记录属性名称.这是我的语言环境文件(config/locales/sv.yml)的开头:
"sv":
activerecord:
models:
employee: "Anställd"
attributes:
employee:
first_name: "Förnamn"
Run Code Online (Sandbox Code Playgroud)
我确信这个文件是由rails使用的,因为在文件中进一步向下更改翻译可以正常工作.这是表单字段erb代码,应该说"Förnamn"而不是"名字":
<div class="field">
<%= f.label :first_name %><br />
<%= f.text_field :first_name %>
</div>
Run Code Online (Sandbox Code Playgroud)
Employee.human_attribute_name(:first_name)在rails控制台中运行会返回"名字".非常感谢你
如何在mysql中定义关系规则?
表1:bookId authorId bookName
表2:authorId authorName
这就是我希望Mysql服务器的行为方式:当我尝试使用在table2中不存在的authorId向table1中插入一行时,mysql会产生错误.
在速度和性能方面最好的是什么?每次需要值时调用该函数(例如mysql_num_rows,time)或将返回值复制到局部变量并使用它.
示例:假设我将time()函数调用十次以获取当前时间,那么使用十次本地变量会更快吗?