新手问题 创建管理员和 rails 小项目的结构求指导

1272729223 · 2012年07月27日 · 最后由 1272729223 回复于 2012年07月27日 · 2336 次阅读

这个管理员折腾来折腾去还是折腾不好,感觉这里的关系弄的太乱,不过我弄的远远还要乱,我只能先解决管理员问题。不然前台我再弄的漂亮都没用。

我现在的问题是: 我参考教程来做的,它先创建一个 users 数据表,然后可以添加任意多的 user。而我想做的就是最简单的一个管理员身份,只有一个管理员!这两天弄来弄去,我现在的思路是: 想建一个 admin 的表: name:string password:string confirmation_password:string

然后在 rails console 里面创建一个管理员,这是我搜到最满意的一个创建管理员的方法:

rails console
> admin = Admin.create! do |u|
> u.name ="admin"
> u.password = "secret"
> u.confirmation_password = "secret"
> end

最后的确是可以创建的,但是我因为折腾了太多东西,最后这个方法创建成功的关键不十分肯定,只是对应与 admin 的表,我觉得也许只要建一个对应字段的 model 就应该可以在 console 里面这样创建了。

我想问一下,这样最简单的一个管理员应该怎么创建呢?

另外我刚刚整理了一下我现在对 rails 项目的思路,仅仅是我这几天折腾下来的浅见,不对的地方 (不用说,肯定有) 渴望您的指导: 首先是目录: project/ |--app/ |----assets/ |----controllers/ |------application_controller.rb |------admin/ |--------|dashboard_controller.rb |--------|news_controller.rb #这里定义管理员的 index,new,create,edit,update,destroy |------news_controller.rb #这里定义面对用户的 index,show |------sessions_controller.rb #这个可以放在 admin 文件夹里面吗? |----helper/ #目前我还不知道怎么用,也许现在还用不到 |----models/ |------|admin.rb #这里管理员的 model |------|news.rb |------|products.rb |----views/ |------admin/ |--------|dashboard.html.erb |--------|news.html.erb |--------setting/ #更换密码 |----------|setting.html.erb #不知道是否可以直接合并_form |------news/ |--------|index.html.erb |--------|show.html.erb #这个 show 对管理员也有效 |----config/ |------|routes.rb

最后在 routes.rb 里面配置路径,针对以上的结构,或者是您建议的正确的结构,应该怎么管理 routes 呢? 我昨晚 (我都是日夜颠倒 120 多度生活的) 根据 ruby-china 的Rei的 github 上下载的code_campo来改的,但是最后还是没理清除这个关系,也许是我创建的时候 admin,它就建了 admins,然后我又图简洁,改成 admin,然后把它默认的结构根据我的思路来移动文件,然后又在之前做的上面考 html 代码 (有些字段名不同又得改),这样以下来,真的乱的不知道报错都在哪儿了。急的时候心理真的象指甲划过玻璃那种纠结!

迫切期待一个清晰的思路,我再重新做一边 (当然无论如何,我还得重新一边一边继续做下去,只是真的好折腾,渴望前辈点拨一下。)

不知道是不是自己年级大了,记性不好了,另外我特别要求那种纯净的代码,没用的多一行都觉得是负担,所以根据教程用脚手架创建的有些地方就觉得是不是多余了

https://github.com/jhjguxin/enki 这是以前 练手弄得 希望对你有帮助 现在 BBTangCMS 也在做这些事情 由于是公司里的项目 _没传送门 _

#1 楼 @1272729223 你可以删除多余的啊

#1 楼 @1272729223 实际项目不会用脚手架的,脚手架的作用就是写入门教程。

最简单的管理员实现是在 User 模型加一个布尔值的 admin 字段。

#4 楼 @chucai #6 楼 @Rei 好的,今晚继续!我还是参照你的 code_campo 来。感觉就象做智商测验!发现规律!

需要 登录 后方可回复, 如果你还没有账号请 注册新账号