Ruby on Rails не регистрирует active_admin при запуске сервера (http://localhost:3001/admin) - PullRequest
1 голос
/ 06 апреля 2019

В настоящее время я создаю свой первый проект React-on-Rails. У меня проблема с загрузкой сервера при попытке запустить API RoR.

Application.rb

    require_relative 'boot'

    require "rails"
    # Pick the frameworks you want:
    require "active_model/railtie"
    require "active_job/railtie"
    require "active_record/railtie"
    require "active_storage/engine"
    require "action_controller/railtie"
    require "action_mailer/railtie"
    require "action_view/railtie"
    require "action_cable/engine"
    require "sprockets/railtie"
    require "rails/test_unit/railtie"

    # Require the gems listed in Gemfile, including any gems
    # you've limited to :test, :development, or :production.
    Bundler.require(*Rails.groups)

    module ListOfIngredients
    class Application < Rails::Application
    # Initialize configuration defaults for originally generated 
    Rails version.
    config.load_defaults 5.2

    # Settings in config/environments/* take precedence over those 
    specified here.
    # Application configuration can go into files in 
    config/initializers
    # -- all .rb files in that directory are automatically loaded 
    after loading
    # the framework and any gems in your application.

    # Only loads a smaller set of middleware suitable for API only 
    apps.
    # Middleware like session, flash, cookies can be added back 
    manually.
    # Skip views, helpers and assets when generating a new resource.
    config.api_only = true

    # Middleware for ActiveAdmin
    config.middleware.use Rack::MethodOverride
    config.middleware.use ActionDispatch::Flash
    config.middleware.use ActionDispatch::Cookies
    config.middleware.use ActionDispatch::Session::CookieStore
    end
    end

Gemfile.

   source 'https://rubygems.org'
   git_source(:github) { |repo| "https://github.com/#{repo}.git" }

   ruby '2.5.1'

   # Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
   gem 'rails', '~> 5.2.0'
   # Use Puma as the app server
   gem 'puma', '~> 3.11'
   # Build JSON APIs with ease. Read more: 
   https://github.com/rails/jbuilder
   # gem 'jbuilder', '~> 2.5'
   # Use Redis adapter to run Action Cable in production
   # gem 'redis', '~> 4.0'
   # Use ActiveModel has_secure_password
   # gem 'bcrypt', '~> 3.1.7'

   # Use ActiveStorage variant
   # gem 'mini_magick', '~> 4.8'

   # Use Capistrano for deployment
   # gem 'capistrano-rails', group: :development

   # Reduces boot times through caching; required in config/boot.rb
   gem 'bootsnap', '>= 1.1.0', require: false

   # Use Rack CORS for handling Cross-Origin Resource Sharing 
   (CORS), making cross-origin AJAX possible
   # gem 'rack-cors'

   group :development, :test do
   # Use sqlite3 as the database for Active Record
   gem 'sqlite3'
   # Call 'byebug' anywhere in the code to stop execution and get a 
   debugger console
   gem 'byebug', platforms: [:mri, :mingw, :x64_mingw]
   end

   group :development do
   gem 'listen', '>= 3.0.5', '< 3.2'
   # Spring speeds up development by keeping your application 
   running in the background. Read more: 
   https://github.com/rails/spring
   gem 'spring'
   gem 'spring-watcher-listen', '~> 2.0.0'
   end

   group :production do
   # Use postgres as the database for production
   gem 'pg'
   end

   # ActiveAdmin
   gem 'devise'
   gem 'activeadmin'

   # Windows does not include zoneinfo files, so bundle the tzinfo- 
   data gem
   gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, 
   :jruby]

Я также настроил два контроллера следующим образом.

api_controller.rb

   class ApiController < ActionController::API
   end

application_controller.rb

    class ApplicationController < ActionController::Base
      protect_from_forgery with: :exception
    end

Когда я запускаю рельсы на локальном хосте 3001, я все равно получаю сообщение об ошибке.

Звездочки :: Rails :: Helper :: AssetNotFound в ActiveAdmin :: Devise :: Sessions # new

где должны находиться ресурсы активных администраторов, если в rails 5 api нет папки активов?

1 Ответ

0 голосов
/ 06 апреля 2019

Я уверен, что ActiveAdmin требует звездочек.Вы запускали?

rails generate devise:install

Возможно, вам также понадобится запустить

rails generate devise:views

Для получения дополнительной информации о соперниках см. devise wiki

Ивозможно посмотрите на этот ответ и этот ответ тоже

ОБНОВЛЕНИЕ:

Если вы следуете инструкциям на этом уроке Вы можете попробовать закомментировать эту строку в application.rb

# require "sprockets/railtie"
...