- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在具有多个子域和多个模式的 rails 应用程序中使用设计 gem。
每个子域都由 Controller 处理,在 application_controller.rb
上看起来像这样:
def load_subdomain
@account = Account.find_by_subdomain!(request.subdomain)
end
def after_sign_in_path_for(resource)
#admin login in domain
if resource.is_a?(admin)
admin_path
#user login in subdomain
elsif resource.is_a?(user)
subdomain_root_path
else
super
end
end
match '/' => 'subdomains#index', :constraints => { :subdomain => /.+/ }, :as => :subdomain_root
devise_for :users, :skip => [:sessions, :registrations]
devise_scope :user do
get '/login/user' => 'sesusers#new', :as => :new_session_user
post '/signin/user' => 'sesusers#create', :as => :user_session
delete '/logout/user' => 'sesusers#destroy', :as => :destroy_user_session
post '/send/user' => 'passwordusers#create', :as => :passwordusers_create
get '/change_password/user' => 'passwordusers#edit', :as => :passwordusers_edit
put '/change/user' => 'passwordusers#update', :as => :passwordusers_update
end
subdomain1.lvh.me:3000/login/user
subdomain2.lvh.me:3000/login/user
subdomain3.lvh.me:3000/login/user
...
...
etc
class SesusersController < Devise::SessionsController
include Tenantable::Schema::Controller
before_filter :load_subdomain
def new
super
end
def create
logger.info "Logged in"
super
end
def destroy
logger.info "Logout success"
super
end
end
Started POST "/signin/user" for 127.0.0.1 at 2013-04-08 20:36:04 +0700
Processing by SesusersController#create as HTML
Parameters: {"utf8"=>"Γ£ô", "authenticity_token"=>"DJ/MJnHU5pHwxQQYDSvwyBsawmx
/9Ms7CXx3me0MBBE=", "user"=>{"email"=>"demouser@domain.com", "password"=>"
[FILTERED]", "remember_me"=>"0"}, "commit"=>"Login"}
Account Load (2.0ms) SELECT "public"."accounts".* FROM "public"."accounts" WH
ERE "public"."accounts"."subdomain" = 'subdomain1' LIMIT 1
Logged in
User Load (2.0ms) SELECT "users".* FROM "users" WHERE "users"."email" = 'demouser@domain.com' LIMIT 1
(2.0ms) BEGIN
(53.0ms) UPDATE "users" SET "last_sign_in_at" = '2013-04-08 12:55:28.631212'
, "current_sign_in_at" = '2013-04-08 13:36:04.615889', "sign_in_count" = 4 WHERE
"users"."id" = 16
(7.0ms) COMMIT
Redirected to http://subdomain1.lvh.me:3000/
Completed 302 Found in 1589ms (ActiveRecord: 0.0ms)
Started GET "/" for 127.0.0.1 at 2013-04-08 20:36:06 +0700
Processing by SubdomainsController#index as HTML
Account Load (2.0ms) SELECT "public"."accounts".* FROM "public"."accounts" WH
ERE "public"."accounts"."subdomain" = 'subdomain1' LIMIT 1
CACHE (0.0ms) SELECT "public"."accounts".* FROM "public"."accounts" WHERE "pu
blic"."accounts"."subdomain" = 'subdomain1' LIMIT 1
(30.0ms) select sum(pg_total_relation_size(table_schema || '.' || table_name
)) from information_schema.tables where table_schema in ('subdomain') group by tab
le_schema
Rendered subdomains/index.html.erb within layouts/subdomain (81.0ms)
Completed 200 OK in 170ms (Views: 130.0ms | ActiveRecord: 33.0ms)
<div class="pull-right">
<div class="btn-group">
<% if user_signed_in? %>
<%= link_to current_user.name, '#', { :class => 'btn btn-danger dropdown-toggle', 'data-toggle' => 'dropdown' } %>
<ul class="dropdown-menu">
<li> <%= link_to "Dashboard", '#', 'style' =>"color:#fff" %></li>
</ul>
<% else %>
<%= link_to ('<i class="icon-lock icon-white"></i>').html_safe + " Login" +(' <span class="caret"></span>').html_safe , '#', { :class => 'btn btn-danger dropdown-toggle', 'data-toggle' => 'dropdown' } %>
<ul class="dropdown-menu">
<li><%= link_to "User", new_session_user_path, 'style' =>"color:#000" %></li>
</ul>
<% end %>
</div>
</div>
current_user.name
不显示,只出现登录按钮。
最佳答案
为此,您只需要在子域之间共享用户 session ,以便多个子域可以继续一个 session 。
您应该修改 session_store.rb
文件初始化为,
DemoApp::Application.config.session_store :cookie_store, key: '_jcrop_app_session', domain: ".maindomain.com"
关于ruby-on-rails - 设计 - 在子域上登录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15880818/
我有这个 html 代码: HELLO WORLD! X V HELLO WORLD! X V 我想按 X(类关闭)将父 div 的高度更改为 20px 并显示 V(类打开),但在每个 d
在会计应用程序的许多不同实现中,有两种主要的数据库设计方法来保存日志和分类帐数据。 只保留 Journal 信息,然后 Ledger 只是 Journal 的一个 View (因为 journal 总
我想在另一个子里面有一个子, sub a { sub b { } } 我想为每次调用 sub b 创建一个新的 sub a 实例。有没有办法在 Perl 中做到这一点? 当我运行上面的
我有一些代码正在查找重复项并突出显示单元格: Private Sub cmdDups_Click() Dim Rng As Range Dim cel As Range Set Rng = ThisW
可能有一个简单的解决方案,但我很难过。 我有一个包含一个 ID 字段的主表。在两个可能的字段中有一个具有该 ID 的子表。想象一个由选手 A 和选手 B 组成的 double 队。Master 表将有
假设我有一个包含对象的数组: [ { "id": "5a97e047f826a0111b754beb", "name": "Hogwarts", "parentId": "
我正在尝试对 MySQL 数据库表执行一对父/子模型的批量插入,但似乎无法使用标准的 ActiveRecord 功能来完成。所以,我尝试了 activerecord-import gem,但它也不支持
我有一个带有多个子类的父抽象类。最终,我希望通过 GUI 中的进度条显示子类中完成的进度。 我目前所做的,我意识到这是行不通的,是在父类中声明为每个子类将覆盖的虚拟方法的事件方法定义。所以像: pub
是否可以通过键数组在对象中设置变量?例如我有这个对象: var obj = {'outer': {'inner': 'value'} }; 并希望设置由键数组选择的值: var keys = ['ou
我有一个名为 companies 的 MySQL 表,如下所示: +---------+-----------+-----------+ | id_comp | comp_name | id_pare
我正在尝试使用 sublime text 在 sublime text 上的 ionic 上打开我的第一个应用程序。它给了我一个“找不到命令”的错误。如何修复? 我试过这些命令: sudo rm -r
不好意思问,但我正在使用 webapp2,我正在设计一个解决方案,以便更容易定义路由 based on this google webapp2 route function .但这完全取决于能够在子级
我有代表树的数字字符串(我不知道是否有官方名称): 012323301212 上面的例子代表了 2 棵树。根用 0 表示。根的直接子代为“1”,“1”的直接子代为“2”,依此类推。我需要将它们分组到由
是否可以在当前 Activity 之上添加 Activity 。例如,假设我单击一个按钮,然后它将第二个 Activity 添加到当前 Activity 。而第二个 Activity 只覆盖了我当前
我很难思考如何为子资源建模。 以作者的书籍为例。你可以有 N 本书,每本书只有一位作者。 /books GET /books POST /books/id PUT /books/id DELETE 到
有人可以向我解释以下内容(python 2.7) 来自已解析文件的两个字符串数字: '410.9''410.9 '(注意尾随空格) A_LIST = ['410.9 '] '410.9' in '41
背景 在 PowerShell 中构建 hash table 是很常见的通过特定属性快速访问对象,例如以 LastName 为基础建立索引: $List = ConvertFrom-Csv @' I
我真的很难弄清楚如何调用嵌套 Polymer Web 组件的函数。 这是标记: rise-distribution组件有 canPlay我想从 rise-playlist
我写了一个小工具转储(以 dot 格式)一个项目的依赖关系图,其中所有位于同一目录中的文件都聚集在一个集群中。当我尝试生成包含相应图形的 pdf 时,dot开始哭: 命令 dot -Tpdf trim
给定一个 CODE ref,是否可以: 访问该 CODE ref 的解析树 通过指定 CODE ref 的解析树来创建一个新的 CODE ref,该解析树可以包含在 1 中返回的解析树的元素 通常我们
我是一名优秀的程序员,十分优秀!