Неопределенный метод WYSIHAT 'резонанса_в_паратере - Ruby on Rails - PullRequest
2 голосов
/ 18 апреля 2010

Я только что успешно установил WysiHat в моем блоге rails. Похоже, что функция «Добавить изображение» не работает. Он успешно позволяет мне находить и выбирать изображение на рабочем столе, но после нажатия кнопки «Сохранить» ничего не происходит.

У меня также успешно установлен Paperclip, и я могу прикреплять изображения к записям вне поля формы WYSIHAT.

Есть идеи? (дайте мне знать, если мне нужно опубликовать любой код).

Кроме того, WysiHat-engine использует facebox , не уверен, что это актуально.

ОБНОВЛЕНИЕ : добавлен журнал сервера, похоже, что скрепка сохраняет его, поэтому не уверен, что еще не так.

Processing PostsController#update (for 127.0.0.1 at 2010-04-23 16:42:14) [PUT]
  Parameters: {"commit"=>"Update", "post"=>{"body"=>"<p>Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi. Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.</p>", "title"=>"Rails Code for Search"}, "authenticity_token"=>"hndm6pxaPLfgnSMFAmLDGNo86mZG3XnlfJoNOI/P+O8=", "id"=>"105"}
  Post Load (0.2ms)   SELECT * FROM "posts" WHERE ("posts"."id" = 105) 
  Post Update (0.3ms)   UPDATE "posts" SET "updated_at" = '2010-04-23 21:42:14', "body" = '<p>Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi. Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.</p>' WHERE "id" = 105
[paperclip] Saving attachments.
Redirected to http://localhost:3000/posts/105
Completed in 12ms (DB: 0) | 302 Found [http://localhost/posts/105]

ОБНОВЛЕНИЕ 2 Я установил ImageMagic, и теперь я получаю следующую ошибку.

Processing WysihatFilesController#index (for 127.0.0.1 at 2010-04-23 23:27:57) [GET]
  Parameters: {"editor"=>"post_body_editor"}
  WysihatFile Load (0.3ms)   SELECT * FROM "wysihat_files" 
Rendering wysihat_files/index
Rendered wysihat_files/_form (1.9ms)
Completed in 4ms (View: 3, DB: 0) | 200 OK [http://localhost/wysihat_files/?editor=post_body_editor]


Processing WysihatFilesController#create (for 127.0.0.1 at 2010-04-23 23:28:09) [POST]
  Parameters: {"commit"=>"Save changes", "wysihat_file"=>{"file"=>#<File:/var/folders/F3/F3ovLEb1EMW4aZ5nsRvRlU+++TI/-Tmp-/RackMultipart20100423-43326-1mzeb3s-0>}, "authenticity_token"=>"IHF9Ghz6gYuAeNOUYhna+O0A4WrDbm4iha4Tsavu97o="}

NoMethodError (undefined method `responds_to_parent' for #<WysihatFilesController:0x10352a2c0>):
  vendor/gems/wysihat-engine-0.1.12/app/controllers/wysihat_files_controller.rb:10:in `create'

Rendered rescues/_trace (25.2ms)
Rendered rescues/_request_and_response (0.3ms)
Rendering rescues/layout (internal_server_error)

Обновление 3 После прочтения комментария ниже, я думаю, что, возможно, мне что-то не хватает в моей модели Post. Вот код для модели.

class Post < ActiveRecord::Base

  has_attached_file :photo
  validates_presence_of :body, :title
  has_many :comments, :dependent => :destroy
  has_many :tags, :dependent => :destroy
  has_many :ugtags, :dependent => :destroy
  has_many :votes, :dependent => :destroy
  belongs_to :user
  after_create :self_vote
      def self_vote
       # I am assuming you have a user_id field in `posts` and `votes` table.
       self.votes.create(:user => self.user)
      end

  cattr_reader :per_page 
    @@per_page = 10

end

Ответы [ 3 ]

0 голосов
/ 24 апреля 2010

Возможно, вам нужно установить ImageMagick или какой-либо другой плагин для работы с изображениями. В любом случае, следуйте RailsCast Райана Бейтса, и вы не ошибетесь: http://railscasts.com/episodes/134-paperclip

0 голосов
/ 26 апреля 2010

Ладно, похоже, это ошибка responseds_to_parent. По какой-то причине моя версия rails не позволяла мне запускать скрипт / генерировать wysihat часть установки. Он сказал, что разрешение было отказано. Я просто запустил gem install responseds_to_parent и все хорошо. Wysihat немного напуган, но пока подойдет.

0 голосов
/ 18 апреля 2010

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

http://github.com/80beans/wysihat-engine

Хотя есть некоторые проблемы. Во-первых, если вы создаете ссылку, вы не можете ее отменить. В файле javascript wysihat-engine нужно сделать небольшую настройку. Вернусь к вам с патчем. Если вы можете понять это к тому времени ... здорово! :)

Btw. я не думаю, что Wysihat использует Facebox. Wysihat-двигатель делает. Проверьте часть unlink в файле js.

...