【发布时间】:2016-06-28 16:45:13
【问题描述】:
我对编程有点陌生。我可能没有输入正确的关键字,但我找不到任何可以回答这个问题的东西。 GitHub 教程也没有涵盖这一点(据我所知)。
所以安装了 rails Device gem,一切运行良好。扩展到用户注册邮件。我决定尝试使用设备控制器。所以我 $ rails 生成设计:控制器确认。
我在那里做了一些事情,完全搞砸了我的应用程序。无论如何,我决定删除分支。我使用 $ git branch -D user-sign-up-mailer 签出到 master 并删除了分支
令我惊讶的是,我在分支中生成的控制器在我的主控器中。现在我觉得我必须扭转这一点..但我的问题是做错了什么?为什么这些控制器是从master来的?这是来自终端的流程
那么我如何扭转这种情况并仅销毁设备控制器?
Mac (user-sign-up-mailer) $ rails generate devise:controllers confirmations
Running via Spring preloader in process 19574
create app/controllers/confirmations/confirmations_controller.rb
create app/controllers/confirmations/passwords_controller.rb
create app/controllers/confirmations/registrations_controller.rb
create app/controllers/confirmations/sessions_controller.rb
create app/controllers/confirmations/unlocks_controller.rb
create app/controllers/confirmations/omniauth_callbacks_controller.rb
如果您还没有,您必须手动进行一些设置:
确保您在 routes.rb 中为生成的控制器覆盖了路由。 例如:
Rails.application.routes.draw do
devise_for :users, controllers: {
sessions: 'users/sessions'
}
end
Mac (user-sign-up-mailer) $ git branch -D user-sign-up-mailer
error: Cannot delete the branch 'user-sign-up-mailer' which you are currently on.
Mac (user-sign-up-mailer) $ git checkout master
M app/models/user.rb
Switched to branch 'master'
Your branch is up-to-date with 'origin/master'.
Mac (master) $ git branch -D user-sign-up-mailer
Deleted branch user-sign-up-mailer (was bdd7590).
Mac (master) $ git status
On branch master
Your branch is up-to-date with 'origin/master'.
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: app/models/user.rb
Untracked files:
(use "git add <file>..." to include in what will be committed)
app/controllers/confirmations/
no changes added to commit (use "git add" and/or "git commit -a")
Mac (master) $
【问题讨论】:
标签: ruby-on-rails ruby git github devise