В Rails отсутствует шаблон в собственном геме

Я раздвоил драгоценный камень и изменил некоторые вещи, но я действительно в отчаянии. Я всегда получаю Шаблон отсутствует:

Отсутствует шаблон. Отсутствует шаблон / адреса / индекс, список / магазин / индекс, блок / база / индекс, приложение / индекс с {:locale=>[:de,:en],:format =>[:html],:handlers=>[:erb,:builder,:raw,:ruby,:jbuilder,:coffee,:haml,:rabl],:version =>[:v1]}. Поиск в: * "/Users/Manu/Documents/rails_projects/my_store_dev/app/views" * "/Users/Manu/.rvm/gems/ruby-2.1.2/bundler/gems/spree_my_favourites-6076d6ee5cb2/app/views" * "/Users/Manu/.rvm/gems/ruby-2.1.2/bundler/gems/spree_address_book-b66e2abf6429/app/views" * "/Users/Manu/.rvm/gems/ruby-2.1.2/bundler/gems/spree-Promotion-role-rule-0fd33e96c5c4/app/views" * "/Users/Manu/.rvm/gems/ruby-2.1.2/bundler/gems/spree-promotion-exclude-specials-rule-1debc9765387/app/views" * "/Users/Manu/.rvm/gems/ruby-2.1.2/bundler/gems/spree_better_terms_and_conditions-8001a85040eb/app/views" * "/Users/Manu/.rvm/gems/ruby-2.1.2/gems/spree_quick_cart-2.2.3/app/views" * "/Users/Manu/.rvm/gems/ruby-2.1.2/bundler/gems/spree_i18n-1d94e07c68c7/app/views" * "/ Пользователи / Ману /.rvm/gems/ruby-2.1.2/bundler/gems/spree_auth_devise-01901766a256/lib/views/backend" * "/Users/Manu/.rvm/gems/ruby-2.1.2/bundler/gems/spree_auth_devise-01901766a256/lib/views/frontend" * "/Users/Manu/.rvm/gems/ruby-2.1.2/gems/devise-3.2.4/app/views" * "/Users/Manu/.rvm/gems/ruby-2.1.2/bundler/gems/spree_gateway-5cbe3890d1a0/app/views" * "/Users/Manu/.rvm/gems/ruby-2.1.2/bundler/gems/spree-33c8fa4d51d8/frontend/app/views" * "/Users/Manu/.rvm/gems/ruby-2.1.2/bundler/gems/spree-33c8fa4d51d8/backend/app/views" * "/Users/Manu/.rvm/gems/ruby-2.1.2/bundler/gems/spree-33c8fa4d51d8/api/app/views" * "/Users/Manu/.rvm/gems/ruby-2.1.2/bundler/gems/spree-33c8fa4d51d8/core/app/views" * "/Users/Manu/.rvm/gems/ruby-2.1.2/gems/kaminari-0.15.1/app/views"

Это мой файл маршрутов:

Spree::Core::Engine.routes.draw do
  # Add your extension routes here
  namespace :account do
    resources :orders, only: [:index]
    resources :favourites, only: [:index]
    resources :addresses, only: [:index]
  end

end

Это мое AddressesController в controller/spree/account/:

module Spree
  module Account
    class AddressesController < Spree::StoreController

  before_filter :check_logged_in_user

  def index
    @user = try_spree_current_user

  end

  private

  def check_logged_in_user
    unless try_spree_current_user
      account_addresses__path 
      redirect_to spree_login_path 
    end
  end

  end
 end
end

у меня есть index.haml в views/spree/account/addresses/и это часть рейковых маршрутов:

account_orders GET    /account/orders(.:format)                                     spree/account/orders#index
account_favourites GET    /account/favourites(.:format)                                               spree/account/favourites#index
account_addresses GET    /account/addresses(.:format)                                                spree/account/addresses#index

Может кто-нибудь дать мне подсказку?

3 ответа

У меня был подобный опыт, не уверен, относится ли это к вам или нет, но вот оно:

Это ошибка, которую я получил:

ActionView::MissingTemplate at / . 
Missing partial spree/shared/_google_analytics with {:locale=>[:en], :formats=>[:html], :variants=>[], :handlers=>[:raw, :erb, :html, :builder, :ruby, :coffee, :haml, :jbuilder, :rabl], :versions=>[:v1]}. Searched in:
* "/Users/sjones/work/cs-spree/app/views"...

Но оказывается, что частичное действительно существует и даже анализируется и запускается (для проверки я использую отладчик RubyMine)

Ошибка неверна. В моем случае вспомогательный метод try_spree_current_user отсутствовал в контроллере, и этот отсутствующий метод NoMethodError ошибка была как-то поймана и заменена MissingTemplate ошибка показана.

Исправление этой ошибки приводило к тому, что шаблон загружался очень хорошо.

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

Я получаю эту ошибку после установки расширения spree_theme

Missing partial spree/shared/_google_analytics

я закончил тем, что нашел файл (таким образом, это не пропало вообще) здесь: public/vinsol_spree_themes/current/views/spree/shared/_google_analytics.js.erb

после отладки немного наконец-то обнаружен отсутствующий класс class not defined ошибка типа с чем-то Spree::Tracker так что все, что мне было нужно, это исправить эту зависимость, и все stujo, как уже упоминалось выше, в stujo иногда кажется, что это сообщение связано не с самим файлом, а с внешними причинами.

Вот как я создаю свой проект с нуля, если вы продолжите таким образом, у вас, вероятно, не будет больше проблем, и вы сможете запустить spree 3.5 просто хорошо

Установка Шпрее с нуля

** Если у вас есть пустое приложение рельсы **

Обновить Gemfile

gem 'spree', '~> 3.5.0'

gem 'spree_auth_devise', '~> 3.3'

gem 'spree_gateway', '~> 3.3'

Установить зависимости разработки

1) bundle update i18n (я думаю, что это необязательно, но не уверен)

2) bundle install

Установите генераторы установки, чтобы настроить Spree:

1) rails g spree:install --user_class=Spree::User

Вам будет предложено настроить учетную запись администратора Email [spree@example.com]: admin@cucg.comPassword [spree123]:

тогда просто беги rails s и у тебя все будет готово

Я только следовал этому Официальному Руководству по установке Шпрее, и все работало просто

Вы должны включить html в ваше имя файла haml.

Вот так:

your_file_name.html.haml

Переименуйте ваш индексный файл в:

index.html.haml

Узнайте больше о хамле здесь:

http://haml.info/tutorial.html

Другие вопросы по тегам