我想向我的Ruby on Rails项目(模型,视图和控制器)的所有方面公开一个全局函数.最初,我认为我可以添加:
def self.my_function
# Code here...
end
Run Code Online (Sandbox Code Playgroud)
到/config/application.rb然后只需调用:
Application::my_function
Run Code Online (Sandbox Code Playgroud)
我申请中的任何地方.但那没用.所以我做了一些谷歌搜索,似乎我可以公开全局函数:
但不是一次性全部.
任何人都可以告诉我,我想要的是可能的吗?
我也希望尽可能避免使用任何包含语句,因为理想情况下这可以从任何地方访问.但是在这一点上,如果我可以在一个中心位置定义该函数的逻辑,即使使用include语句也是可以的.
ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.1 ruby-on-rails-3.2
我很想知道是否有办法让PHP页面或其他服务器端逻辑拦截URL,这样如果查询URL"www.mysite.com/about/mission_statement"但我没有在"about/mission_statement"的页面,我可以提供内容,例如"some/other/folder/with/pages".
有人知道这是否可能,或者我是否必须确保我有一个页面可用于我希望处理的每个网址?
在javascript中,我有一个日志输出选项,允许使用元素/选择器指定输出日志/错误消息的位置.初始化时输出格式如下:
var $messageOutput = options.messageOutputElement ? $(options.messageOutputElement) : null;
Run Code Online (Sandbox Code Playgroud)
稍后通过日志功能使用它:
function outputMessage(msg)
{
if ($messageOutput !== null)
{
messageNum++;
var $messageOutput = $(options.messageOutputElement);
var html = $messageOutput.html();
html += '<b>' + messageNum + '</b><br/>' + msg + '<br/>';
$messageOutput.html(html);
$messageOutput.scrollTop($messageOutput[0].scrollHeight);
}
}
Run Code Online (Sandbox Code Playgroud)
问题是即使$ messageOutput === null,outputMessage()内的if语句也会失败.我已经与Chome的调试器验证了$ messageOutput确实等于null.事实上它无论如何都会进入if语句.
任何人都可以告诉我为什么会发生这种情况?提前感谢您对此事的任何意见.