ruby-on-rails – 多个控制器中方法的Rails约定

ruby-on-rails – 多个控制器中方法的Rails约定,第1张

概述我有一个应用程序,其用户的个人资料可通过site.com/username访问.在选择用户名时,我对我的UsersController中的方法进行 AJAX调用,以确保用户名可用(并在提交时检查后端).我现在想要添加也可以通过site.com/groupname访问的组.由于组和用户名不能冲突,因此响应AJAX调用的任何控制器方法都需要同时检查两者,因此check_username_availab 我有一个应用程序,其用户的个人资料可通过site.com/username访问.在选择用户名时,我对我的UsersController中的方法进行 AJAX调用,以确保用户名可用(并在提交时检查后端).我现在想要添加也可以通过site.com/groupname访问的组.由于组和用户名不能冲突,因此响应AJAX调用的任何控制器方法都需要同时检查两者,因此check_username_available和check_groupname_available方法将执行完全相同的 *** 作.最好的做法/ Rails方法是什么,因为我不想在UsersController和GroupsController中复制代码?

为每个控制器设置一个方法似乎有点多余,即使将功能拉出到帮助器,因为仍然会有两条路由执行相同的 *** 作.有一个单独的控制器也解决了这个问题,但不确定这是不错的Rails实践.

解决方法 重用的代码可以通过模块共享

class UsersController < ActionController::Base  include nameUniquenessendclass GroupsController < ActionController::Base  include nameUniquenessendmodule nameUniqueness  protected  def check_name    # implementation here  endend

两个控制器现在都可以访问check_name实例方法.

总结

以上是内存溢出为你收集整理的ruby-on-rails – 多个控制器中方法的Rails约定全部内容,希望文章能够帮你解决ruby-on-rails – 多个控制器中方法的Rails约定所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1279020.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-09
下一篇 2022-06-09

发表评论

登录后才能评论

评论列表(0条)

保存