2017-08-15 14 views
-1

我想製作一個web應用程序,並且一切工作都很順利。但是,ActionView突然出錯了。它似乎無法識別封閉的HTML標籤。每當它看到一個封閉的括號時,它就聲稱這些封閉是未封閉的。但是,我認爲他們都是!我已經發布了下面的錯誤日誌,可能有人知道發生了什麼...!BookmkfoldersController中的SyntaxError#index,未知的正則表達式選項 - dv

我收到以下錯誤:

SyntaxError in BookmkfoldersController#index 
app/views/bookmkfolders/index.html.erb:16: unknown regexp options - dv 
app/views/bookmkfolders/index.html.erb:17: syntax error, unexpected '<' 

,這是文件index.html.erb

<ul class="board-canvas" data-update-url = "<%=sort_bookmkfolders_url %>"> 

<% @bookmkfolders.each do |bookmkfolder| %> 
     <div class="panel-wrapped"> 
      <li id="<%=bookmkfolder.id%>" class="panel" style = "background-color:<%=bookmkfolder.bookmkfoldercolor%>"> 
      <%= text_field_tag :test, "", class: 'thVal' %> 
      <h2 class= "panel-title" ><%= bookmkfolder.bookmkfoldertitle %></h2> 
      <div class="panel-menu"> 
       <%= button_tag "Add a bookmark-url", type: 'button', class: 'addfolder js-add-card' %> 
       <div class="add-card-form"> 
       <%= simple_form_for @bookmkfolder, remote: true, url: {action: "<%= @bookmkfolder.id %>"} do |k| %> 
       <%= k.input_field :bookmktitle, class: 'board-make-input', autocomplete: :off, autocorrect: :off, spellcheck: false, placeholder: 'Add a bookmark' %> 
       <%= button_tag "SAVE", type: 'submit' , class: 'save-button js-save-card' %> 
       <%= button_tag "", type: 'button', class: 'delete-button' , "<span class="fa fa-times fa-1x" aria-hidden="true"></span>".html_safe %> 
       <% end %> 
       </div> # this is error message app/views/bookmkfolders/index.html.erb:16 
      </div> 
      </li> 

      <ul class="card-list"> 
      <% [email protected] do |bookmk| %> 
       <li class ="card-item"> 
       <%= link_to "","<%= bookmk.bookmktitle %>", class: 'card-link' %> 
       <%= image_tag "#", class: 'card-thumbnail' %> 
       <p class = "card-txt"><%= bookmk.bookmktitle%></p> 
       </li> 
      <%end%> 
      </ul> 
     </div> 
<%end%> 
</ul> 

,這是從bookmkfolders_controller提取來源。

def index 
@bookmkfolders = Bookmkfolder.all 
@bookmkfolders = Bookmkfolder.order("sequence") 
@bookmkfolder = Bookmkfolder.new 
@bookmks = Bookmk.all 
@bookmk = Bookmk.new 
end 

def newfolder 

# redirect_to '/bookmkfolder/createfolder' 
end 

def createfolder 
colors = ['#c9ddff', '#c9ffdd', '#ffd2c9', '#c9caff', '#fdc9ff', '#fffdc9', 
'#c9fffc', '#ffc9c9', '#ffe5c9', '#eaffc9'] 
    puts Bookmkfolder.methods 
    @bookmkfolder = Bookmkfolder.new(bookmkfolder_params) 
    @bookmkfolder.user = current_user 
    @bookmkfolder.sequence = Bookmkfolder.count + 1 
    @bookmkfolder.bookmkfoldercolor = colors.at(rand(colors.size)) 

    respond_to do |format| 
    if @bookmkfolder.save 
     format.html { redirect_to @bookmkfolder, notice: 'Bookmkfolder was 
successfully created.' } 
     format.js {} 
     format.json { render :show, status: :created, location: @bookmkfolder } 

    else 
     format.html { render :new } 
     format.json { render json: @bookmkfolder.errors, status: 
    :unprocessable_entity } 
    end 
    end 
end 

回答

0

不能嵌套<% %>這樣的:

<%= simple_form_for @bookmkfolder, remote: true, url: {action: "<%= @bookmkfolder.id %>"} do |k| %> 

一旦你打開你正在使用Ruby的<%,所以你可以在代碼中使用變量,如下所示:

<%= simple_form_for @bookmkfolder, remote: true, url: { action: @bookmkfolder.id } do |k| %> 

不涉及電流誤差,同時也注意到,第二button_tag是不正確的(除了使用嵌套雙引號),你無法通過像你試圖用"<span>...</span>".html_safe做一個說法。

你在找什麼是傳遞一個,像這樣:

<div class="add-card-form"> 
    <%= button_tag "", type: 'button', class: 'delete-button' do %> 
    <span class="fa fa-times fa-1x" aria-hidden="true"></span> 
    <% end %> 
</div> 

您可以在the docs瞭解button_tag

+0

感謝您的支持,但它沒有奏效......我編輯了您所教的代碼,但得到了相同的錯誤消息。 –

+0

@SeanHuh檢查更新的答案,我錯過了'simple_form_for'中的一些錯誤。 – Gerry

+1

謝謝!有用! –

0

我認爲這是錯誤的:

<%= button_tag "", type: 'button', class: 'delete-button' , "<span class="fa fa-times fa-1x" aria-hidden="true"></span>".html_safe %>

你試圖以一種不可思議的方式包圍"<span class="fa fa-times fa-1x" aria-hidden="true"></span>"

這應該工作:

'<span class="fa fa-times fa-1x" aria-hidden="true"></span>'

(我取代了起點和終點「用「)

+0

感謝您的支持,但它沒有工作......我得到了同樣的錯誤信息。即使我刪除了您提到的代碼,但我收到了一條新錯誤消息(c:/Ruby22-x64/DevKit/git/bookmarker/app/views/bookmkfolders/index.html.erb:17:語法錯誤,意外的'<')這意味着在以前的錯誤代碼下的代碼。 –

相關問題