gpt4 book ai didi

ruby-on-rails - Rails 载波 : undefined method `image_url' for #

转载 作者:行者123 更新时间:2023-12-02 04:51:01 28 4
gpt4 key购买 nike

我是 Rails 的新手。我使用 rails 3.2.20 和 carrierwave gem 以两种形式上传图像,即 ShorttermCourse 和 OrientationCourse。效果很好。每当我尝试使用以下方式在 ShorttermCourse 中显示上传的图像时:

<%= image_tag(@shortterm_course.image_url(:thumb).to_s, :class => @shortterm_course.image? ? "img-responsive img-thumbnail" : nil) %>

它给出了以下错误:

#ShorttermCourse:0x007f9de0204ad8 的未定义方法“image_url”

但类似的代码显示 OrientationCourse 的图像。

当我重新启动 Rails 服务器时,它会显示 ShorttermCourse 的图像,但随后它停止为 OrientationCourse 工作,给出未定义的方法“image_url”错误。以下是 ShorttermCourse 的文件:

show.html.erb:

<!-- row -->            
<div class="row">
<div class="col-lg-12">
<h1 class="page-header">Individual Record</h1>
</div>
<!-- /.col-lg-12 -->
<p id="notice"><%= notice %></p>
</div>
<!-- /.row -->
<!-- row -->
<div class="row">
<div class="col-lg-12">
<%= image_tag(@shortterm_course.image_url(:thumb).to_s, :class => @shortterm_course.image? ? "img-responsive img-thumbnail" : nil) %>
<div class="table-responsive">
<table class="table table-striped table-hover">
<tr>
<th>ID</th>
<th>Name</th>
<th>Gender</th>
<th>Religion</th>
<th>Category</th>
<th>Marital status</th>
<th>Email</th>
<th>Stream</th>
<th>College</th>
</tr>
<tr class="success">
<td><%= @shortterm_course.id %></td>
<td><%= @shortterm_course.name %></td>
<td><%= @shortterm_course.gender %></td>
<td><%= @shortterm_course.religion %></td>
<td><%= @shortterm_course.category %></td>
<td><%= @shortterm_course.marital_status %></td>
<td><%= @shortterm_course.email %></td>
<td><%= @shortterm_course.stream %></td>
<td><%= @shortterm_course.college %></td>
</tr>
</table>
<table class="table table-striped table-hover">
<tr>
<th>University</th>
<th>City</th>
<th>District</th>
<th>State</th>
<th>Position</th>
<th>Payscale</th>
<th>Subject</th>
<th>Std Code</th>
<th>Landline</th>
</tr>
<tr class="success">
<td><%= @shortterm_course.university %></td>
<td><%= @shortterm_course.city %></td>
<td><%= @shortterm_course.district %></td>
<td><%= @shortterm_course.state %></td>
<td><%= @shortterm_course.position %></td>
<td><%= @shortterm_course.payscale %></td>
<td><%= @shortterm_course.subject %></td>
<td><%= @shortterm_course.std_code %></td>
<td><%= @shortterm_course.landline %></td>
</tr>
</table>
<table class="table table-striped table-hover">
<tr>
<th>Mobile</th>
<th>University pin</th>
<th>Dob</th>
<th>Date of joining</th>
<th>Preferred date1</th>
<th>Preferred date2</th>
<th>Residential address</th>
<th>Pin</th>
<th>Phd</th>
</tr>
<tr class="success">
<td><%= @shortterm_course.mobile %></td>
<td><%= @shortterm_course.university_pin %></td>
<td><%= @shortterm_course.dob %></td>
<td><%= @shortterm_course.date_of_joining %></td>
<td><%= @shortterm_course.pref_date1 %></td>
<td><%= @shortterm_course.pref_date2 %></td>
<td><%= @shortterm_course.res_address %></td>
<td><%= @shortterm_course.pin %></td>
<td><%= @shortterm_course.phd %></td>
</tr>
</table>
</div>
<!-- /.table-responsive -->
<%= link_to 'Edit', edit_shortterm_course_path(@shortterm_course), :class => 'btn btn-default' %>
<%= link_to 'Delete', shortterm_course_path, method: :delete, :class => 'btn btn-default', data: { confirm: 'Are you sure?' } %>
<%= link_to 'Back', shortterm_record_path, :class => 'btn btn-default' %>
</div>
<!-- /.col-lg-12 -->

</div>
<!-- /. row -->

shortterm_courses_controller.rb

class ShorttermCoursesController < ApplicationController
before_filter :authenticate_admin!, :only => [:show, :edit, :update, :destroy, :record]
layout "adminDashboard", :only => [:show, :edit, :update, :destroy, :record]

# GET /shortterm_courses
# GET /shortterm_courses.json
def index
raise ActionController::RoutingError.new('Not Found')
end
# GET /shortterm_courses/1
# GET /shortterm_courses/1.json
def show
@shortterm_course = ShorttermCourse.find(params[:id])

respond_to do |format|
format.html # show.html.erb
format.json { render json: @shortterm_course }
end
end

#List of record
def record
@shortterm_courses = Kaminari.paginate_array(ShorttermCourse.all).page(params[:page]).per(4)
respond_to do |format|
format.html
format.json { render json: @shortterm_courses }
end
end

# GET /shortterm_courses/new
# GET /shortterm_courses/new.json
def new
@shortterm_course = ShorttermCourse.new

respond_to do |format|
format.html # new.html.erb
format.json { render json: @shortterm_course }
end
end

# GET /shortterm_courses/1/edit
def edit
@shortterm_course = ShorttermCourse.find(params[:id])
end

# POST /shortterm_courses
# POST /shortterm_courses.json
def create
@shortterm_course = ShorttermCourse.new(params[:shortterm_course])

respond_to do |format|
if @shortterm_course.save
format.html { redirect_to registered_path }
format.json { render json: @shortterm_course, status: :created, location: @shortterm_course }
else
format.html { render action: "new" }
format.json { render json: @shortterm_course.errors, status: :unprocessable_entity }
end
end
end

# PUT /shortterm_courses/1
# PUT /shortterm_courses/1.json
def update
@shortterm_course = ShorttermCourse.find(params[:id])

respond_to do |format|
if @shortterm_course.update_attributes(params[:shortterm_course])
format.html { redirect_to @shortterm_course, notice: 'Shortterm course was successfully updated.' }
format.json { head :no_content }
else
format.html { render action: "edit" }
format.json { render json: @shortterm_course.errors, status: :unprocessable_entity }
end
end
end

# DELETE /shortterm_courses/1
# DELETE /shortterm_courses/1.json
def destroy
@shortterm_course = ShorttermCourse.find(params[:id])
@shortterm_course.destroy

respond_to do |format|
format.html { redirect_to shortterm_record_path}
format.json { head :no_content }
end
end
end

shortterm_course.rb

class ShorttermCourse < ActiveRecord::Base
belongs_to :course
attr_accessible :category, :city, :college, :subject, :date_of_joining, :district, :dob, :email, :gender, :landline, :marital_status, :mobile, :name, :payscale, :phd, :pin, :position, :pref_date1, :pref_date2, :religion, :res_address, :state, :stream, :university, :university_pin, :std_code, :alternate_email, :image, :course_id
mount_uploader :image, ImageUploader
end

OrientationCourse 模型类似于 ShorttermCourse 模型,因此 OrientationCourse 的代码也类似。

我无法弄清楚问题是什么。我已经查看了以下问题 Carrierwave NoMethodError: undefined method `image_url' for Item但我的问题不同。

所以,请帮我解决这个问题。在此先致谢!

最佳答案

应该是@shortterm_course.image.url(:thumb)

关于ruby-on-rails - Rails 载波 : undefined method `image_url' for #<ShorttermCourse:0x007f9de0204ad8>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28431746/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com