Top > 開発ガイド > コンポーネント開発逆引きリファレンス > TinyMCEで添付ファイルPluginを利用する

TinyMCEで添付ファイルPluginを利用する

対象バージョン

当ドキュメントはRubricks-0.6.x向けです。

概要

Rubricksの添付ファイル機能を利用したTinyMCEの添付ファイルPluginを提供しています。
このPluginを利用することで簡単にTinyMCE上でファイルの添付、画像ファイルの表示が行えます。

使い方

  1. コントローラでuse_tiny_mce_attachableを呼び出します。
    class News::NewsController < ApplicationController
      use_tiny_mce_attachable({
            :function_name  => 'access',
            :storage_type   => RubricksConfig.get('site_attachment_type')
      })
    end
    
  • 添付ファイル、画像ファイルへのアクセスを許可するかの判定を行うコールバックメソッドを定義します。 
    • メソッド名:file_accessable?
    • 引数:ra(RubricksAttachmentオブジェクト)
    • 戻り値:true or false
      アクセスを許可するならtrue、許可しないならfalseを返して下さい。
  1. モデルでacts_as_tiny_mce_attachableを呼び出します。
    class News::NewsItem < ActiveRecord::Base
      acts_as_tiny_mce_attachable(:article, {
        :clean_up_timeout => 30
        }
      })
    end
    
  2. ビューでinit_tiny_mceのオプションを指定します。

init_tiny_mceでTinyMCEのライブラリとRubricksで提供するJavaScript?関数を読み込む際に以下のいずれかのオプションを指定します。

  • ケース1:modeオプションに'attachment'を指定
    <%= init_tiny_mce({:mode => 'attachment'}) %>
    
  • ケース2:theme_advanced_buttons1~3オプションに'fileattachment'(ファイル添付),'imageattachment'(画像添付)を指定
    <%= init_tiny_mce({:theme_advanced_buttons1  => 'fileattachment,imageattachment'}) %>
    

関連項目

API

use_tiny_mce_attachable(options)

  • 添付ファイルへのアクセスに必要な権限やファイルの保存先を設定します。
引数必須初期値説明
options×-Hash下記「オプション」を参照してください。

オプション

キー 必須 初期値 説明
:function_id
:function_name
- 該当コンポーネントの'access'権限 Integer
String
添付ファイルにアクセスするために必要な権限を指定します。この機能は後述の添付ファイル保存先を:databaseとした場合にのみ有効となります。
RubricksFunctionのID(数値)もしくは該当コンポーネントのFunctionName('access'や'admin'等)で指定します。
省略した場合、該当コンポーネントの'access'権限となります。
:name - 添付ファイルの元ファイル名 String 添付ファイルを保存する際のファイル名を指定します。
省略した場合、添付ファイルの元ファイル名が使用されます。
:storage_type - 一般設定の「アップロードファイルの格納先」で設定した値 Symbol 添付ファイルの保存先を指定します。指定できるのは:filesystem または :databaseです。
:filesystemを指定すると該当コンポーネントの公開ファイルディレクトリに保存されます。
:databaseを指定するとデータベース上に保存されます。
省略した場合、一般設定の「アップロードファイルの格納先」で設定した値となります。
ファイルシステムを指定した場合には静的ファイルとして保存されるため、パフォーマンス的に優位となります。
データベースを指定した場合はパフォーマンスには劣りますが、アクセス制御が行えるメリットがあります。

acts_as_tiny_mce_attachable(attachable_columns, options)

  • 添付ファイルPlugin利用するためにモデルを拡張します。
引数必須初期値説明
attachable_columns-Symbol添付ファイルPluginを利用するテキストエリアのデータを格納するカラム名(リスト指定可能) 
options×-Hash下記「オプション」を参照してください。

オプション

キー 必須 初期値 説明
:clean_up - true boolean trueの場合、該当モデルの更新時にクリーンアップ(参照されなくなったファイルを削除)を行います。
:clean_up_timeout - 0 Integer :clean_upがtrueの場合のクリーンアップの間隔(単位:日)を指定します。
0の場合は毎回クリーンアップを行います。