【问题标题】:Rails controller cannot find my template even though it existsRails 控制器找不到我的模板,即使它存在
【发布时间】:2014-05-15 22:36:48
【问题描述】:
def index
  @welcome = current_user.is_Welcome?
  @title = 'Dashboard'
  if current_user.worker?
    project_in_progress = Project.where(:worker_id => current_user.id, :status => 'Currently     Working')
    @projects_in_progress = project_in_progress.order("id DESC").paginate(:page => params[:page], :per_page => 8)
    @bid_invites = current_user.bids.where(:status => 'Invited')
    @project_awarded = @projects_in_progress.where(["updated_at > ?", current_user.last_action])
    @milestone_paid = Milestone.where(:user_id => current_user.id, :status => 'Paid').where(["updated_at > ?", current_user.last_action])
    render :worker_index, :locals => { working_projects: @projects_in_progress, bid_invites: @bid_invites, project_awarded: @project_awarded,
                                       milestone_paid: @milestone_paid, welcome: @welcome }
  elsif current_user.buyer?
    project = current_user.projects.where(:status => ['Hiring Open', 'Currently Working'])
    @open_projects = project.order("id DESC").paginate(:page => params[:page], :per_page => 8)
    render :buyer_index, :locals => { open_projects: @open_projects, welcome: @welcome }
  end   
end

我确实在正确的文件夹中有这些视图。

这是我得到的错误

模板丢失

缺少带有 {:locale=>[:en], :formats=>[:html], :handlers=>[:erb, :builder, :arb, :coffee]} 的模板帐户/buyer_index.html。搜索:*“

我真的希望这是我的疏忽....

【问题讨论】:

  • 无论您最终在渲染位上的哪个位置 - 这不是 skinny 控制器。您可能会考虑将大部分代码(where 查询、范围、逻辑)移至模型/其他类以进行清理。
  • 感谢您的评论.. 我正在清理它。它是我继承的一些代码库的一部分。我对这些不同类型的用户有一个单一的视图,第一步是将其分开
  • 它现在似乎可以工作了.. 我刚刚删除了我的文件并重新创建了它们。感谢您的帮助马特

标签: ruby-on-rails


【解决方案1】:

如果您绝对确定您的观点在正确的位置,它们的命名是否恰当?他们需要匹配:handlers=>[:erb, :builder, :arb, :coffee]中的处理程序

例如app/views/accounts/buyer_index.html.erb

【讨论】:

  • 我的视图命名正确。这对我来说实际上很奇怪..因此我在这里发帖的原因..
猜你喜欢
  • 1970-01-01
  • 2019-07-04
  • 1970-01-01
  • 1970-01-01
  • 2014-11-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-08-07
相关资源
最近更新 更多