2012-07-17 11 views
5

sto usando Rails 3.2.3, e quando i carichi TinyMCE in produzione, ottengo quattro 404s:Impossibile modificare DocumentBaseUrl in TinyMCE

"NetworkError: 404 Not Found - http://[my-domain]/[current-path]//langs/en.js" 
"NetworkError: 404 Not Found - http://[my-domain]/[current-path]//plugins/fullscreen/editor_plugin.js" 
"NetworkError: 404 Not Found - http://[my-domain]/[current-path]//themes/advanced/editor_template.js" 
"NetworkError: 404 Not Found - http://[my-domain]/[current-path]//plugins/media/editor_plugin.js" 

Forse questi file vengono chiamati in modo asincrono da tiny_mce.js perché non sono elencati nella mia fonte. I miei js aspetto:

tinyMCE.init({ 
    theme: "advanced", 
    mode: "textareas", 
    plugins: "fullscreen, media", 
    height: 300, 
    relative_urls :true, 
    theme_advanced_toolbar_location : "top", 
    theme_advanced_toolbar_align : "left", 
    theme_advanced_buttons1 : "bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,search,replace,|,bullist,numlist,|,outdent,indent,|undo,redo,|,link,unlink,anchor,image,cleanup,code,|,insertdate,inserttime,preview,hr,removeformat,visualaid,|,sub,sup,|,fullscreen,spellchecker", 
    theme_advanced_buttons2 : "styleselect,formatselect,imageListBox,media", 
    theme_advanced_buttons3 : "", 
    editor_selector : "mceEditor", 
    extended_valid_elements : "form[action|accept|accept-charset|enctype|method|name|onsubmit|id|name]", 
    convert_urls : false, 
    remove_script_host : false 
}); 

function toggleTinyMCE(id) { 
    if (!tinyMCE.get(id)) 
     tinyMCE.execCommand('mceAddControl', false, id); 
    else 
     tinyMCE.execCommand('mceRemoveControl', false, id); 
} 

tutti i miei file TinyMCE sono nella directory app/beni/javascript/tiny_mce, così ho provato ad aggiungere document_base_url e base_url ai miei init params, ma non importa ciò che li ho impostato , quando ispeziono TinyMCE in Firebug, vedo che i loro valori non cambiano a quello che ho inserito.

Sono consapevole che un plugin Rails da kete esiste per TinyMCE, ma its README afferma che non è consigliabile per Rails> = 3.1

+0

La risposta su questa questione ha aiutato molto: http: // StackOverflow. it/questions/7325364/tinymce-loading-lang-plugins-theme-from-errato-directory –

risposta

0

Io non sono sicuro se questo vi aiuterà, ma si può dare un provare. Ecco la sezione sugli url relativi e assoluti delle domande frequenti: http://www.tinymce.com/wiki.php/TinyMCE_FAQ#Paths.2FURLs_are_incorrect.2C_I_want_absolute.2Frelative_URLs.3F

+0

Grazie. Ho esaminato la pagina e ho giocato con i parametri che hanno descritto, ma non ho visto nulla che potesse fare la differenza, e non ero ancora in grado di cambiare 'documentBaseURL'. – JellicleCat

+0

sry, in realtà non ho altre idee – Thariama

0

Non è necessario modificare document_base_url. È possibile aggiungere tinymce direttamente alla pagina.

<script type="text/javascript" src="/assets/vendor/tiny_mce/tiny_mce.js"></script> 

E la marca shure tutti i file da TinyMCE è rispettato il pipline attivi con l'aggiunta di config/application.rb

config.assets.precompile << 'vendor/tiny_mce/*' 
+0

Il mio problema non è che 'tiny_mce.js' non viene caricato o che i file di supporto non esistano ma che tinymce sta cercando i file di supporto nel posto sbagliato. 'tiny_mce.js' si sta già caricando correttamente nella pagina; in caso contrario, il browser non tenterebbe mai di caricare i file di supporto di tinymce che ho menzionato sopra. Quindi aggiungendolo (di nuovo) al front-end come suggerisci non fa alcuna differenza. Inoltre, è già nella pipeline degli asset (sotto 'app/assets/javascripts'), e inserendolo altrove, quindi aggiungendolo manualmente alla pipeline degli asset non fa differenza. – JellicleCat