표준 crud 기능이있는 모듈을 만들려고합니다. 이 일을 할 수 있는지, 현명하고, 연습을 하느냐,하지 않겠습니까, 직접 찾아야합니다. 지금까지는 표준 요청 요청을 만들었습니다. 그러나 나는 행동을 생성하고 '스택 레벨 너무 깊은 오류'가 발생하는 구현하려고합니다.스택 레벨을 너무 깊게 만드는 모듈에 crud 액션이 발생했습니다.
class FlagsController < ApplicationController
include CrudConcern
before_action lambda { crud_index(Flag.all) }, only: :index
before_action lambda { crud_new(Flag.new) }, only: :new
before_action lambda { crud_create(Flag.new, flags_path) }, only: :create
def create
end
end
침전물 모듈
def crud_create(model, route)
variable = model(params)
if variable.save
flash[:notice] = "Saved!"
redirect_to route
else
flash[:error] = "Try again"
render :new
end
end
왜이 발생한다? 주위에 방법이 있습니까? Crudify라고 불리는 보석이 있습니다. 그렇게 할 수 있다고 가정합니다.
감사
당신이 아니라 당신의 방법을 기대하는 모델 클래스보다, 모델의 인스턴스를 전달하는 것 같습니다
는 여전히 같은 오류를 제공합니다. 나는이 변형을 시도했지만 아무 소용이 없다. – user3868832
@ user3868832 다른 답변으로 내 대답을 편집했습니다. – mattmattmatt