小编tom*_*omr的帖子

加载常量时自动加载常量时检测到循环依赖性

首先:我用谷歌搜索并在这里使用搜索,并找到相同错误的答案,但在不同的设置.也许我打破了不同;)

错误:

RuntimeError at /admin/users
Circular dependency detected while autoloading constant Admin::UsersController
Run Code Online (Sandbox Code Playgroud)

结构是:

App => controllers => admin => users_controller.rb
Run Code Online (Sandbox Code Playgroud)

路线:

namespace :admin do
  resources :stuff
  resources :users
end
Run Code Online (Sandbox Code Playgroud)

用户控制器:

class UsersController < Admin::BaseController
  def new
    #code
  end

  def create
    #code
  end

  def index
    #code
  end

  private

  def user_params
   #code
  end
end
Run Code Online (Sandbox Code Playgroud)

管理员控制器

class Admin::BaseController < ApplicationController
  layout 'admin'
  before_filter :require_login
end
Run Code Online (Sandbox Code Playgroud)

使用:Rails 4.1.4,Ruby 2.1.2我在这里做错了什么?

谢谢你的帮助!

编辑:

development.rb

Rails.application.configure do
 config.cache_classes = false
 config.eager_load = false
 config.consider_all_requests_local       = true
 config.action_controller.perform_caching …
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails ruby-on-rails-4

41
推荐指数
1
解决办法
4万
查看次数

调用错误方法时,"未定义的方法`错误'为nil:NilClass"

我目前正在教自己一些RoR和教程,但添加一些更好的布局和引导程序的东西,我遇到了一个我无法弄清楚的问题.

我正在尝试进行验证部分(http://guides.rubyonrails.org/getting_started.html#adding-some-validation),但是当我使用时:

<% @post.errors.any? %>
Run Code Online (Sandbox Code Playgroud)

我收到这条消息:

undefined method `errors' for nil:NilClass
Extracted source (around line #9):
<legend><h1>Add Post</h1></legend>

<%= form_for :post, url: posts_path, html: {class: 'form-horizontal'} do |f| %>
      <% if @post.errors.any? %>
        <div id="errorExplanation">
Run Code Online (Sandbox Code Playgroud)

什么都行不通,我甚至复制并粘贴了教程中的部分.

以下是视图的代码:

<p> </p>

<div class="span6"

<fieldset>
    <legend><h1>Add Post</h1></legend>

    <%= form_for :post, url: posts_path, html: {class: 'form-horizontal'} do |f| %>
          <% if @post.errors.any? %>
            <div id="errorExplanation">

                <h2><%= pluralize(@post.errors.count, "error") %> prohibited this post from being saved:</h2>

                <ul>
                    <% @post.errors.full_messages.each do |msg| %>
                    <li><%= …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails erb

20
推荐指数
1
解决办法
3万
查看次数

从tar.gz文件中读取而不保存解压缩版本

我有一个tar.gz文件保存在磁盘上,我想把它打包在那里,但我需要在存档中打开一个文件,从中读取并在某处保存一些信息.

File structure:
base_folder
  file_i_need.txt
  other_folder
  other_file
Run Code Online (Sandbox Code Playgroud)

代码(它不是很多 - 我尝试了10种不同的方式,这就是剩下的)

def self.open_file(file)
    uncompressed_file = Gem::Package::TarReader.new(Zlib::GzipReader.open(file))
uncompressed_file.rewind
end
Run Code Online (Sandbox Code Playgroud)

当我在控制台中运行它时,我得到了

<Gem::Package::TarReader:0x007fbaac178090>
Run Code Online (Sandbox Code Playgroud)

我可以在条目上运行命令.我还没弄明白如何打开一个条目并从中读取而不保存它解压缩到磁盘.我主要需要文本文件中的字符串.

任何帮助赞赏.我可能只是遗漏了一些东西......

ruby gzip tar ruby-on-rails-4

3
推荐指数
1
解决办法
698
查看次数

标签 统计

ruby ×2

ruby-on-rails ×2

ruby-on-rails-4 ×2

erb ×1

gzip ×1

tar ×1