{"type"=>"cluster_block_exception", "reason"=>"blocked by: [FORBIDDEN/12/index read-only / allow delete (api)];"} on item with id '2'
Это ошибка, которую я получаю.Что я сделал:
rails db:drop db:create db:migrate
rails c and Model.reindex (failed)
Ошибка:
[1] pry(main)> Post.reindex
Post Load (0.4ms) SELECT "posts".* FROM "posts" ORDER BY "posts"."id" ASC
LIMIT $1 [["LIMIT", 1000]]
Post Import (137.9ms) {"count":1,"id":1}
Elasticsearch::Transport::Transport::Errors::Forbidden: [403] {"error":
{"root_cause":[{"type":"cluster_block_exception","reason":"blocked by:
[FORBIDDEN/12/index read-only / allow delete
(api)];"}],"type":"cluster_block_exception","reason":"blocked by:
[FORBIDDEN/12/index read-only / allow delete (api)];"},"status":403}
from
/Users/CHAFET/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/gems/elasticsearch-
transport-6.1.0/lib/elasticsearch/transport/transport/base.rb:205:in
`__raise_transport_error'
Затем я снова зашел в консоль rails и запустил 'Post.search_index.delete'
Post Import (99.1ms) {"count":1,"id":1}
=> true
Затем я попытался снова перейти к моей модели 'show' или 'save', и это выдает мне ошибку поверх этого повествования:
{"type"=>"cluster_block_exception", "reason"=>"blocked by: [FORBIDDEN/12/index
read-only / allow delete (api)];"} on item with id '2'
- Когда я нажимаю 'Create Post', это даетмне ошибка
- Обратите внимание, что если я нажму 'назад', 'Пост' будет создан
Это мой контроллер почты:
class PostsController < ApplicationController
before_action :set_post, only: [ :edit, :update, :destroy, :show]
skip_before_action :authenticate_user!
def index
if params[:query]
@posts = Post.search(params[:query])
else
@posts = Post.all
end
@top_post = Post.order(view: :desc).first
@popular_posts = Post.order(view: :desc).first(4) - [@top_post]
end
def new
@post = Post.new
end
def create
@post = Post.new(post_params)
@post.view = 0
@post.user = current_user
if @post.save
redirect_to dashboard_path
else
render :new
end
end
def show
@popular_posts = Post.order(view: :desc).first(4) - [@top_post]
@post.view += 1
@post.save
end
def dashboard
@posts = Post.all
end
def edit
end
def update
@post.update(post_params)
redirect_to post_path
end
def destroy
@post.destroy
redirect_to dashboard_path
end
private
def set_post
@post = Post.find(params[:id])
end
def post_params
params.require(:post).permit(:title, :content, :photo)
end
end