首先:我用谷歌搜索并在这里使用搜索,并找到相同错误的答案,但在不同的设置.也许我打破了不同;)
错误:
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) 我目前正在教自己一些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) 我有一个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)
我可以在条目上运行命令.我还没弄明白如何打开一个条目并从中读取而不保存它解压缩到磁盘.我主要需要文本文件中的字符串.
任何帮助赞赏.我可能只是遗漏了一些东西......