2014-09-11 65 views
0

我想在Rails 4.1中将代码保存到一个简单的模型中。现在我将ACE数据保存到Rails表单文本区域中,并放入我的模型的文本字段中。但是,当我尝试在我的索引视图中显示代码时,代码已删除换行符和格式。 jQuery-ace的文档讨论了如何访问ACE实例,但我不确定这是什么意思或如何将其与Rails模型结合使用。这是在文档中的代码:如何将ACE代码编辑器数据保存到Rails模型中?

// Decorator 
var decorator = $('.my-code-area').data('ace'); 

// ACE Code Editor instance 
var aceInstance = decorator.ace; 

我猜想,这将返回一个特殊的Javascript对象,其中包括“代码”的格式,例如换行符。我如何使用Rails将这些信息捕获到我的模型中,然后能够在其他地方的视图中回荡?

目前我实例在Rails编辑器的form_for,像这样:

<%= f.text_area :content, class: "my-code-area", rows: "8", style: "width: 100%" %> 

<script> 
    $('.my-code-area').ace({ theme: 'twilight', lang: 'ruby' }) 
</script> 

我一定要使用前面提到的Javascript,也可以添加一些JavaScript对象,以我的Rails模型,或类似的规定行呢?或者当我看到我的时候也需要使用ACE?

回答

0

ACE只格式化你的代码的文本布局,因此它should't对您的模型输入的任何变化。

你需要告诉它来格式化的index视图的代码以及,它支持<div>

类似:

<div class="my-code-area"> 
    <%= model.code_attribute %> 
</div> 

<script> 
    $('.my-code-area').ace({ theme: 'twilight', lang: 'ruby' }) 
</script> 
+2

我发现了一个问题,用做这种方式。特别是在尝试提交页面时。它似乎不保存内容。 – user532339 2014-09-16 10:07:36