Rails 帮助设计

Posted

技术标签:

【中文标题】Rails 帮助设计【英文标题】:Rails help with devise 【发布时间】:2011-09-28 12:33:11 【问题描述】:

嘿,我试图在设计中建立一个关联,这样用户就可以有一个指向他的关联的链接(就像他可以点击新帖子并且他可以做到一样)但我不能像普通的轨道那样在设计中建立它,它似乎很常见,但似乎没有人能帮助我(或者他们不知道我在说什么),我尝试手动制作控制器和视图,但我遇到问题(500 内部服务器错误)继承我的日志文件 https://github.com/Kevin-Mohamed/mygit 如果需要任何其他信息,请告诉我

【问题讨论】:

我可以看到您正在尝试访问“devise/pictures/new.html.erb”并在“app/views/devise/pictures/_form.html.erb”中遇到语法错误。那些页面是设计附带的还是您自己创建的?如果您能稍微澄清一下您的问题,那也会有所帮助。 @MikeWilliamson 我自己制作的(设计文件夹以及用于设计的控制器中的文件夹) @mike-williamson 我自己制作的(设计文件夹以及用于设计的控制器中的文件夹)。我在这个问题中的意思是,我不知道如果您正在制作 youtube 并且用户想要上传视频,我将如何将 youtube 帐户链接到上传页面。 (在这种情况下,使用户能够从他可以访问的页面上传图片,所以我可能只是对如何为设计进行 link_to 操作感到困惑,因此只有用户可以访问上传图片) 这是什么? form_for([:devise, @picture] @jesse-wolgamott 我从github.com/thauanz/Photos-Gallery这里模仿了这个过程,主要是用画廊代替图片以及用管理员代替设计。我真的不确定如何在设计中完成关联,如果你能指导我完成它会有所帮助,我也不知道 form_for([:devise, @picture] 到底是什么意思,我认为它可以让你访问controller/devise/picture_controller.rb 中的图片控制器 【参考方案1】:

好的,所以这不是我的想法,所以 YMMV。有很多方法可以解决这个问题,但这里有一种方法......不要试图让设计做的比它应该做的更多。

class User
  #devise links go here
  has_many :pictures
end

class Picture
  belongs_to :user
end

#routes
namespace :my do
  resources :pictures
end

class ApplicationController
  # current_user gets set here by devise
end

class PicturesController
  def create
    @picture = current_user.pictures.build(params[:picture])
  end
end

#In your view you'd have the following, which would post to /my/pictures

=form_for(my_pictures_path(@picture)) do |f|
  ... etc

【讨论】:

谢谢,它看起来很有帮助,我现在已经放弃了,我对应用程序的另一部分有点深入,但我稍后会试试这个

以上是关于Rails 帮助设计的主要内容,如果未能解决你的问题,请参考以下文章

从 Rails 控制台重新加载帮助程序

Rails帮助程序检查您是否处于开发模式。

在 Rails 中创建帮助程序时未定义的方法

仪表板命名空间的 Rails 路由帮助

从Rails控制台(Rails 3)访问url帮助程序(url等)

rails,friendly_id,设计用户名不显示 slug