这似乎是一个菜鸟问题,但简单的答案是在逃避我.我需要调用link_to
一个ActionController
方法来吐出一个HTML链接. ActionView::Helpers::UrlHelper.link_to
调用url_for
,但这会调用AV模块的版本而不是控制器的版本.我设法强迫这样做,通过推杆做我想要的
#FIXME there must be a better way to mixin link_to
alias_method :self_url_for, :url_for
include ActionView::Helpers::UrlHelper
alias_method :url_for, :self_url_for
Run Code Online (Sandbox Code Playgroud)
在控制器中.但是,我仍然不确定它为什么会起作用.有人可以解释方法范围并隐藏这里发生的事情吗?什么是更好的混合方式link_to
(或者通常只包括模块中的一些方法),所以我可以在控制器中调用它(生成带有链接的flash字符串就是用例.)
请不要讲MVC - 如果有的话,link_to
应该在一个单独的模块中url_for
.从噪音的数量来看,很多人遇到这个看似微不足道的障碍,并最终浪费了一个小时做"Rails方式",真正想要的是一分钟黑客让我的应用程序现在工作.是否有"Rails方式"可能与助手一起做这件事?还是更好的红宝石方式?
将Web应用程序移植到iOS上的phoneGap,我们拥有绝对路径的资产(和ajax)URL,例如:
<img src="/img/logo.png">
Run Code Online (Sandbox Code Playgroud)
我们在PhoneGap的www目录下打包了img目录.图像不会使用绝对路径加载,而只会加载相对路径,例如:
<img src="img/logo.png">
Run Code Online (Sandbox Code Playgroud)
有人可以解释在这种情况下URL是如何被加前缀或翻译?即:
<img src="/www/img/logo.png">
Run Code Online (Sandbox Code Playgroud)
也不起作用.那么PhoneGap在iOS上使用的URL基础是什么?
我们也尝试过,例如:
<img src="file://img/logo.png">
<img src="file:///img/logo.png">
Run Code Online (Sandbox Code Playgroud)
但没有去.
我们希望避免将URL更改为相对于端口,因为绝对路径URL在整个CSS中使用,Ajax代码,由带有Rails后端的Sprockets设置,等等.我们如何才能在iOS上加载PhoneGap/UIWebView以加载使用写入的绝对路径URL的资产?
我在StackOverflow上看到这个问题在各种形式上有很多问题,但我还没有看到正确的答案.
探索一些具有blob字段的表.我怎样才能select *
使用命令行客户端并让它压缩blob字段的打印(或截断到标准字段宽度)而不是在屏幕上滚动一堆二进制垃圾?这是与mysql 5.1客户端.只是想做一个select*而不是单独列出所有非blob字段,以便进行开发.
我们的webapp在Facebook原生iOS应用程序中运行良好.但是,我们有一些链接需要在移动Safari中打开一个新窗口,而不是在Facebook(UIWebView?)应用程序内打开.只是一个普通的HTML <a href="http://site...." target="_blank">
不能做到 - 仍然在Facebook应用程序(最新版本)中打开.任何方式获得一个普通的链接或window.open()切换到Safari的页面加载?
遇到AR 2.3.5的问题,例如:
users = User.all( :select => "u.id, c.user_id", :from => "users u, connections c",
:conditions => ... )
Run Code Online (Sandbox Code Playgroud)
返回,例如:
=> [#<User id: 1000>]
>> users.first.attributes
=> {"id"=>1000, "user_id"=>"1000"}
Run Code Online (Sandbox Code Playgroud)
请注意,AR返回id
作为数字搜索的模型,但选择user_id
的连接模型为a String
,尽管两者都int(11)
在数据库模式中.
我怎样才能更好地形成这种类型的查询来选择支持多个模型的表列并检索它们的自然类型而不是String
?似乎AR正在这个地方撑船.如何在AR加载时强制返回类型,而不必.to_i
在每个post-hoc访问上添加(等)?
看来,使用Rails/AR和Inflector
方法加入到String
通过ActiveSupport
,我希望在默认情况下,
Nested::ClassDerived::FromAR.name.tableize == Nested::ClassDerived::FromAR.table_name
Run Code Online (Sandbox Code Playgroud)
但实际上是tableize
调用underscore
,并underscore
没有实际强调::
嵌套类分隔符,而是将其替换为a /
来创建路径名.也许应该调用这种方法pathify
?
无论如何,我需要实际的下划线.所以我正在考虑定义一个新的String
inflector方法:
def new_inflector
underscore.gsub('/', '_')
end
Run Code Online (Sandbox Code Playgroud)
这实际上会强调嵌套的类名字符串.
所以,我的问题是,underscore
为了正确地和通常地命名我的新变形器方法,没有配置,' ' 的正确变形是什么.是' underscoreize
'(遵循由' tableize
' 建立的惯例)还是' underscorize
'?或许underscoreify
?
有任何见解赞赏.
尝试在沙盒模式下将关联添加为我们应用程序的测试人员/开发人员,以便他们可以添加应用程序并对其进行测试.当他们去确认开发者应用程序请求时,会出现"应用程序错误"对话框,其中显示:
获取所请求的应用程序的数据时出现问题.该应用程序可能无效,或者可能存在暂时的故障.请稍后再试.
在作为管理员进行身份验证时,该应用程序在开发模式下工作正常,但我们需要做些什么来添加其他用户作为开发人员和测试人员?错误消息不是特别有见地.任何帮助赞赏.