"users/user1"给定Firebase参考,如何获取Firebase路径(没有主机名部分的位置字符串)?我在文档中找不到并试图搜索但没有运气.
现在我在Node.js中确实喜欢这个,给出Firebase参考ref:
var url = require('url'); // standard Node.js 'url' module.
var location = url.parse(ref.toString()).pathname;
Run Code Online (Sandbox Code Playgroud)
这是正确的做法还是存在更可靠的方式?
PS.我看到的ref.path.o是包含可以构造路径的字符串的数组,但我认为它不在公共API上,可能会有变化吗?
我正在创建一个使用gem"jquery-rails"的rails mountable引擎插件.我在.gemspec文件中添加了此代码
s.add_dependency "jquery-rails", "~> 3.0.1"
Run Code Online (Sandbox Code Playgroud)
并运行bundle install,bundle update.(BTW是否需要添加?因为rails mountable引擎已经添加了"rails 4.0.1",这反过来又要求"jquery-rails 3.0.4"作为它的依赖从一开始?).
在app/assets/javascript/mountable_engine_name/application.js中
//= require jquery
//= require jquery-ujs
//= require_tree .
Run Code Online (Sandbox Code Playgroud)
但是当我在test/dummy /上运行服务器并访问任何使用该标签的模板时,<%= javascript_include_tag "mountable_engine_name/application" %>它显示错误"找不到文件'jquery'".
我尝试创建一个全新的可安装引擎插件,但它发生的情况相同.
我做错什么了吗?
PS.对不起我的英语不好.
更新
实际上它发生在app/assets/javascript /和test/dummy/app/assets/javascript /中需要jquery和jquery-ujs的所有清单文件中.
我是Ruby on Rails的新手,目前我想将Devise gem用于身份验证系统.系统只需要管理员可以列出用户并创建新用户.(我通过将admin boolean field添加到Devise生成的User模型中添加了admin角色).我使用Rails 3.2,Ruby 1.9.3和最新的Devise gem.
但是,下面列出的代码不会阻止未经过身份验证的用户访问特定操作(索引,新建和创建).
# users_controller.rb
class UsersController < Devise::RegistrationsController
before_filter :authenticate_user!, only: [:index, :new, :create]
before_filter :is_admin, only: [:index, :new, :create]
def index
end
private
def is_admin
current_user.admin?
end
end
Run Code Online (Sandbox Code Playgroud)
==
# config/routes.rb
App::Application.routes.draw do
root to: 'static_pages#home'
get '/about', to: 'static_pages#about'
devise_scope :user do
get '/users', to: 'users#index'
end
devise_for :users, controllers: { sessions: "sessions", registrations: "users" }
end
Run Code Online (Sandbox Code Playgroud)
该authenticate_user!方法不起作用(例如,未经过身份验证的用户仍可以访问/users或/users/sign_up)但也不会引发任何异常.我做了一些搜索,但没有想法为什么.请帮忙.
PS.对不起我的英语不好.
UPDATE
谢谢你的所有答案.我会更新is_admin到正确的工作,如指出.
但这里的主要问题是,未登录的用户可以首先传递 …