当前位置: 首页 > 知识库问答 >
问题:

Rails heroku ActionView::Template::Error(未定义方法`Author'

魏熠彤
2023-03-14

我试过在本地迁移,然后推到heroku它没有工作。我尝试过heroku run rake DB:Migrate,然后重新启动它不起作用。

我试着重新启动dyno,它也没有工作。

有什么我可以查一下的可以提供更多的细节吗?我正在查看heroku run rake db:migrate:status,但它只显示了一般的迁移创建书籍。

 2017-09-20T21:31:06.432739+00:00 app[web.1]: I, [2017-09-20T21:31:06.432588 #4]  INFO -- : [f953f5f7-3cab-45a4-9f97-2cd7004e2807] Started GET "/books" for 81.106.178.87 at 2017-09-20 21:31:06 +0000
2017-09-20T21:31:06.441798+00:00 app[web.1]: I, [2017-09-20T21:31:06.441609 #4]  INFO -- : [f953f5f7-3cab-45a4-9f97-2cd7004e2807]   Rendering books/index.html.erb within layouts/application
2017-09-20T21:31:06.435519+00:00 app[web.1]: I, [2017-09-20T21:31:06.435371 #4]  INFO -- : [f953f5f7-3cab-45a4-9f97-2cd7004e2807] Processing by BooksController#index as HTML
2017-09-20T21:31:06.487993+00:00 app[web.1]: D, [2017-09-20T21:31:06.487768 #4] DEBUG -- : [f953f5f7-3cab-45a4-9f97-2cd7004e2807]   Book Load (4.1ms)  SELECT "books".* FROM "books"
2017-09-20T21:31:06.549929+00:00 app[web.1]: I, [2017-09-20T21:31:06.549786 #4]  INFO -- : [f953f5f7-3cab-45a4-9f97-2cd7004e2807]   Rendered books/index.html.erb within layouts/application (107.8ms)
2017-09-20T21:31:06.550338+00:00 app[web.1]: I, [2017-09-20T21:31:06.550261 #4]  INFO -- : [f953f5f7-3cab-45a4-9f97-2cd7004e2807] Completed 500 Internal Server Error in 115ms (ActiveRecord: 22.9ms)
2017-09-20T21:31:06.552408+00:00 app[web.1]: F, [2017-09-20T21:31:06.552334 #4] FATAL -- : [f953f5f7-3cab-45a4-9f97-2cd7004e2807]   
2017-09-20T21:31:06.552538+00:00 app[web.1]: F, [2017-09-20T21:31:06.552475 #4] FATAL -- : [f953f5f7-3cab-45a4-9f97-2cd7004e2807] ActionView::Template::Error (undefined method `author' for #<Book:0x00000003849768>):
2017-09-20T21:31:06.552872+00:00 app[web.1]: [f953f5f7-3cab-45a4-9f97-2cd7004e2807]     24:         <tr>
2017-09-20T21:31:06.552875+00:00 app[web.1]: [f953f5f7-3cab-45a4-9f97-2cd7004e2807]     27:             <td><%=  image_tag book.image_url.to_s%></td>
2017-09-20T21:31:06.552870+00:00 app[web.1]: F, [2017-09-20T21:31:06.552781 #4] FATAL -- : [f953f5f7-3cab-45a4-9f97-2cd7004e2807]     23:       <% @books.each do |book| %>
2017-09-20T21:31:06.552873+00:00 app[web.1]: [f953f5f7-3cab-45a4-9f97-2cd7004e2807]     25:             <td><%= book.name %></td>
2017-09-20T21:31:06.552874+00:00 app[web.1]: [f953f5f7-3cab-45a4-9f97-2cd7004e2807]     26:             <td><%= book.author %></td>
2017-09-20T21:31:06.552876+00:00 app[web.1]: [f953f5f7-3cab-45a4-9f97-2cd7004e2807]     28:             <td><%= link_to "Свали Книга", book.attachment_url %></td>
2017-09-20T21:31:06.552881+00:00 app[web.1]: [f953f5f7-3cab-45a4-9f97-2cd7004e2807]     29:             <td><%= button_to "Delete", book, method: :delete, class: "btn btn-danger", confirm: "Сигурни ли сте, че желаете да изтриете #{book.name}?" %></td>
2017-09-20T21:31:06.552931+00:00 app[web.1]: F, [2017-09-20T21:31:06.552862 #4] FATAL -- : [f953f5f7-3cab-45a4-9f97-2cd7004e2807]   
2017-09-20T21:31:06.553046+00:00 app[web.1]: F, [2017-09-20T21:31:06.552958 #4] FATAL -- : [f953f5f7-3cab-45a4-9f97-2cd7004e2807] app/views/books/index.html.erb:26:in `block in _app_views_books_index_html_erb__879124352395591768_27663240'
2017-09-20T21:31:06.553047+00:00 app[web.1]: [f953f5f7-3cab-45a4-9f97-2cd7004e2807] app/views/books/index.html.erb:23:in `_app_views_books_index_html_erb__879124352395591768_27663240'
class CreateBooks < ActiveRecord::Migration[5.1]
  def change
    create_table :books do |t|
      t.string :name
      t.string :author
      t.string :image
      t.string :attachment

      t.timestamps
    end
  end
end
ActiveRecord::Schema.define(version: 20170920131113) do

  create_table "books", force: :cascade do |t|
    t.string "name"
    t.string "author"
    t.string "image"
    t.string "attachment"
    t.datetime "created_at", null: false
    t.datetime "updated_at", null: false
  end

  create_table "users", force: :cascade do |t|
    t.string "name"
    t.string "email"
    t.datetime "created_at", null: false
    t.datetime "updated_at", null: false
  end

end
<% if !flash[:notice].blank? %>
    <div class="alert alert-info">
        <%= flash[:notice] %>
    </div>
<%end%>

<br />

<%= link_to "Нова Книга", new_book_path, class: "btn btn-primary mb1 bg-blue" %>
<br />
<br />
<table class="table table-boarded table-striped">
    <thread>
        <tr>
            <th>Име</th>
            <th>Aвтор</th>
            <th>Корица</th>
            <th>Линк за сваляне</th>
            <th>&nbsp;</th>
        </tr>
    </thread>
    <tbody>
        <% @books.each do |book| %>
        <tr>
            <td><%= book.name %></td>
            <td><%= book.author %></td>
            <td><%=  image_tag book.image_url.to_s%></td>
            <td><%= link_to "Свали Книга", book.attachment_url %></td>
            <td><%= button_to "Delete", book, method: :delete, class: "btn btn-danger", confirm: "Сигурни ли сте, че желаете да изтриете #{book.name}?" %></td>
        </tr>
        <% end %>
    </tbody>
</table>

Controllers/Books_Controller.rb

class BooksController < ApplicationController
  def index
    @books = Book.all
  end

  def new
    @book = Book.new
  end 

  def create
    @book = Book.new(book_params)

    if @book.save
        redirect_to books_path, notice: "Kнигата '#{@book.name}' е качена успешно!"
    else
        render 'new'
    end
  end

  def destroy
    @book = Book.find(params[:id])

    @book.destroy

    redirect_to books_path, notice: "Книгата е изтрита!"
  end

  private

  def book_params
    params.require(:book).permit(:name, :author, :image, :attachment)
  end

end

共有1个答案

伊裕
2023-03-14

我能让它运行,这是帮助的答案。

https://stackoverflow.com/A/32159297/7264254

也许您在首次运行heroku run rake db:migrate之后添加了captcha列,其中包含了该迁移?如果是这种情况,您需要用重置数据库(请注意,这将清除所有数据)

 类似资料:
  • 我试图以编程方式创建一个饼图,希望把它变成一个React组件来重用。基本上,我需要一个饼图,是可点击的,每个切片扩展成一个整体饼当点击。我试图按照这个教程来制作饼图,在底部,我有一个JS的一部分,我试图测试出来。我最终得到了以下是错误消息的截图。 我的理解是,这不是jQuery,只是一个普通的JS。我不确定这是不是真的。我通过CDN导入jQuery,但仍然得到相同的错误。我读了这篇文章,我认为只是

  • 问题内容: 当我尝试运行此简单的python脚本时出现错误: 假设我输入“花花公子”,我得到的错误是: 我正在运行Mac OS X 10.9.1,并且正在使用python 3.3安装随附的Python Launcher应用程序来运行脚本。 编辑:我意识到我以某种方式运行这些脚本与2.7。我想真正的问题是如何在3.3版中运行脚本?我以为,如果将脚本拖放到应用程序文件夹中Python 3.3文件夹内的

  • 我试图用XAMPP和sql Server做一个简单的连接。但是当我试图输入数据或连接到数据库时,我会遇到这个错误。错误是什么?我的项目急需它。我不知道为什么php第9行是错误。 致命错误:未捕获错误:调用C:\xampp\htdocs\last1\new\register.php:19中的未定义方法mysqli::error() 请帮帮我:(谢谢你们;*

  • 当我们在开发某些东西时,经常会需要我们自己的 error 类来反映在我们的任务中可能出错的特定任务。对于网络操作中的 error,我们需要 HttpError,对于数据库操作中的 error,我们需要 DbError,对于搜索操作中的 error,我们需要 NotFoundError,等等。 我们自定义的 error 应该支持基本的 error 的属性,例如 message,name,并且最好还有

  • Good day我不确定发生了什么我怀疑eclipse,但在UserDetailsServiceImpl中它是定义的,因为我实现了spring的UserDetails服务,下面是我的代码 这是让人头痛的一行“UserDetails UserDetails=userDetailsService.loadUserByUsername(username)”提前感谢您

  • 我知道OutlineButton是旧版本,而新版本是OutlinedButton。 我的项目: 环境: sdk: ” 我的安装 : [√] 颤振通道稳定,3.0.5,