草庐IT

uri-templates

全部标签

go-templates - 如何根据表达式有条件地在 Go 模板中设置变量,如果不使用 if 语句包装可能会导致错误

问题我该如何做这样的事情:{{$use_ssl:=(ne$.Env.CERT_NAME"")}}其中$.Env.CERT_NAME可能为零/未定义。如果它是零,它给出这个错误:at:errorcallingne:invalidtypeforcomparison注意:我无法控制传递给Go模板的对象,因此必须完全在模板本身内解决这个问题。我尝试过的我试图通过首先检查它是否为非空来变通:{{$use_ssl:=(($.Env.CERT_NAME)&&(ne$.Env.CERT_NAME""))}}但它给出了这个错误:unexpected"&"inoperand所以我切换到这个,这在语法上是允

ruby - 如何在 Ruby 中将方案设置为 URI 对象

我正在尝试从用户输入中解析URI。我假设有些用户不会将方案放在他们的URI中,我想默认为“http”。以下代码无效:require'uri'uri_to_check=URI::parse("www.google.com")uri_to_check.scheme="http"unlessuri_to_check.schemeputsuri_to_check.to_s我希望看到“http://www.google.com”,但我得到的是“http:www.google.com”。甚至可以这样做吗?如果是这样,我错过了什么?有更好的方法吗? 最佳答案

ruby-on-rails - ActionView::Template::Error(不兼容的字符编码:UTF-8 和 ASCII-8BIT)

我正在使用Ruby1.9.2、Rails3.0.4/3.0.5和PhusionPassenger3.0.3/3.0.4。我的模板是用HAML编写的,我使用的是MySQL2gem。我有一个Controller操作,当传递一个具有特殊字符(如变音符号)的参数时,会出现以下错误:ActionView::Template::Error(incompatiblecharacterencodings:UTF-8andASCII-8BIT)错误指向我的HAML模板的第一行,其中包含以下代码:我的理解是,这是因为我有一个UTF-8字符串与一个ASCII-8BIT字符串连接在一起,但我终究无法弄清楚那个

ruby - 如何使用 httparty 切换 base_uri

我正在尝试将参数传递给login方法,我想根据该参数切换基本uri。像这样:classManagementdbincludeHTTPartydefself.login(game_name)casegame_namewhen"game1"self.base_uri="http://game1"when"game2"self.base_uri="http://game2"when"game3"self.base_uri="http://game3"endresponse=self.get("/login")ifresponse.success?@authToken=response["au

Ruby:检查 URI 是否为 HTTPS?

我想检查URI是否需要SSL身份验证:url=URI.parse("http://www.google.com")#[somecode]ifurl.instance_of?URI::HTTPShttp.use_ssl=truehttp.verify_mode=OpenSSL::SSL::VERIFY_NONEend但是,那几行抛出以下错误../usr/lib/ruby/1.8/uri/common.rb:436:in`split':badURI(isnotURI?):HTTPS(URI::InvalidURIError)from/usr/lib/ruby/1.8/uri/common.

ruby - 加载网页时 : "undefined method ` request_uri' for #"

我正在尝试使用Ruby通过HTTP加载网页并检查其状态代码是什么。我的代码如下所示:require"net/http"@r=Net::HTTP.get_response(URI.parse(myURL))return@r.code但是,对于某些URL(主要是指向奇怪的东西,例如不会给出正确响应的Web计数器),我得到了一个undefinedmethodrequest_urifor#异常。我已经将它追溯到http.rb的第380行(我正在运行Ruby1.8),它说:defHTTP.get_response(uri_or_host,path=nil,port=nil,&block)ifpa

ruby-on-rails - 我如何在 Rails 的模型中获取 request.uri?

$request=request当我在Controller中编写它时,它会起作用。但是,如果我在模型或应用程序Controller中需要这个变量,我该怎么办? 最佳答案 模型存在于网络请求的上下文之外。您可以在irb中实例化它们,您可以在延迟作业或脚本中实例化它们,等等。如果模型依赖于请求对象,那么这些事情都不可能发生。正如tsdbrown所说,您必须以某种方式从使用模型的上下文中传递该信息。 关于ruby-on-rails-我如何在Rails的模型中获取request.uri?,我们在

ruby - 在 Ruby 中提取 URI 最后一段的最佳方法

给定的URI字符串如下:http://www.somesite.com/abchttp://www.somesite.com/alpha/beta/abchttp://www.somesite.com/alpha/abc在Ruby中获取这些URI末尾的abc最优雅的方法是什么? 最佳答案 我会使用合适的URI解析器,例如URImodule中的一个。从URI获取路径。然后在/处拆分,得到最后一部分:require'uri'URI(uri).path.split('/').last 关于ru

ruby - Ruby 的 'open-uri' 和 'Net:HTTP' gem 有什么区别?

看起来这两个gem执行的任务非常相似。任何人都可以举例说明一种gem在哪些方面比另一种更有用吗?我没有我所指的具体代码,我更想知道每个gem的一般用例。我知道这是一个简短的问题,我会根据要求填空。谢谢。 最佳答案 它们看起来执行相似任务的原因是OpenURI是Net::HTTP、Net::HTTPS和Net::FTP的包装器。通常,除非您觉得需要较低级别的接口(interface),否则使用OpenURI会更好,因为您可以使用更少的代码。使用OpenURI,您可以打开URL/URI并将其视为文件。参见:http://www.ruby

ruby-on-rails - ActionView::Template::Error:缺少要链接到的主机

正如标题所暗示的,当我尝试在我的邮件程序模板中使用link_to时出现此错误:ActionView::Template::Error:Missinghosttolinkto!Pleaseprovidethe:hostparameter,setdefault_url_options[:host],orset:only_pathtotrue我尝试按照它的说明进行操作,并且还找到了thispost,但我仍然收到错误。我尝试将config.action_mailer.default_url_options={host:'example.com'}添加到以下每个文件,但没有一个有效:/confi