현재 3 개의 테이블이 있습니다.HABTM에 사용 된 양식을 저장하기 전에 무엇인가하기
조각 태그 snippet_tags
내가 HABTM를 사용하고.
태그를 사용하여 스 니펫을 저장하는 양식을 만들었습니다. 키워드는 쉼표로 구분 된 텍스트 입력란에 있습니다.
내가해야 할 일은이 텍스트 필드에서 문자열을 가져 와서 키워드를 반복하고, 키워드가 존재하는지 확인하고, 작성하지 않았 으면 확인한 다음 스 니펫을 저장하는 것입니다. 당신이 나를 도울 수 있다면
나는 before_save으로 시도했지만 그런 식으로 이동하지 않는 것..
그래서, 그것은 좋은 거라고!
고맙습니다.
LOL 내 컨트롤러는 다음과 같습니다. http://pastie.org/705756 길을 찾으려합니다. find_or_create 메소드가 있다는 것을 몰랐습니다! 그러나 문제는 다음과 같습니다. snippet.new (params [: snippet]) 할 때마다 ActiveRecord :: AssociationTypeMismatch (태그 (# 2181591060) 예상 됨, 문자열 있음 (# 2148246520)) : app/controllers/snippet_controller.rb : 18 : new in app/controllers/snippet_controller.rb : 18 : 작성 중 도움을 주셔서 감사합니다! – TomShreds
길을가는 길에서도 길을 찾지 않습니다. 그러나 그 아이디어는 훌륭하고 제 모델에 어떤 종류의 문제가있을 것이라고 생각합니다 ... 몰라요. http://pastie.org/705758 – TomShreds
이름 충돌이 의심 될 수도 있습니다. 'params [: snippet]'에': tags' 키가 포함되어 있으면 Rails는 HABTM 연관에서 얻은'tags' 메소드를 사용하여 tags 문자열을 할당하려고 시도합니다. 보내는 양식의 입력란에'snippet [tags]'및'snippet_tags'와 같은 이름과 ID가 없는지 확인하십시오. 이 경우 'f.text_field : tags'와 같은 것을 사용하지 마십시오. 쉼표로 구분 된 태그를 전달하려면'text_field_tag' 메소드를 사용하십시오. 하지만 여기서 추측하고 있습니다. 로그 파일에서 뷰 또는 매개 변수 목록의 코드를 게시 할 수 있다면 도움이됩니다. –