我是ROR的初学者,并且正在制作ROR项目。服务器运行正常,但不知道它从昨天起停止工作。
启动服务器时,服务器正常启动,但是如果我通过http://localhost:3000在浏览器中访问服务器,则服务器将停止工作。如果我再次想使用rails s
来启动它,则表明该端口已被其他进程使用。当我再次运行此文件时,服务器已启动,但它又无法为我加载索引文件。
通过rails s
命令运行服务器:
=> Booting Puma
=> Rails 5.2.4.3 application starting in development
=> Run `rails server -h` for more startup options
*** SIGUSR2 not implemented, signal based restart unavailable!
*** SIGUSR1 not implemented, signal based restart unavailable!
*** SIGHUP not implemented, signal based logs reopening unavailable!
Puma starting in single mode...
* Version 3.12.6 (ruby 2.6.5-p114), codename: Llamas in Pajamas
* Min threads: 5, max threads: 5
* Environment: development
* Listening on tcp://localhost:3000
Use Ctrl-C to stop
在浏览器上访问http://localhost:3000后:
=> Booting Puma
=> Rails 5.2.4.3 application starting in development
=> Run `rails server -h` for more startup options
*** SIGUSR2 not implemented, signal based restart unavailable!
*** SIGUSR1 not implemented, signal based restart unavailable!
*** SIGHUP not implemented, signal based logs reopening unavailable!
Puma starting in single mode...
* Version 3.12.6 (ruby 2.6.5-p114), codename: Llamas in Pajamas
* Min threads: 5, max threads: 5
* Environment: development
* Listening on tcp://localhost:3000
Use Ctrl-C to stop
Started GET "/" for 127.0.0.1 at 2020-06-03 09:54:24 +0530
(0.3ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
Processing by MoviesController#index as HTML
Rendering movies/index.html.erb within layouts/application
User Load (0.4ms) SELECT "users".* FROM "users" WHERE "users"."id" = ? ORDER BY "users"."id" ASC LIMIT ? [["id", 1], ["LIMIT", 1]]
Movie Load (0.4ms) SELECT "movies".* FROM "movies"
Rendered movies/index.html.erb within layouts/application (52.3ms)
如果我在浏览器中访问http://localhost:3000,服务器将停止。
index.html.erb
:
<% if !user_signed_in? %>
<div class="jumbotron">
<h1> Your Faviorite Movies Revied </h1>
<p> Hashtag, hooodie mumblercore selfies. Authentic keffiyeh leggings kickstarter, narwhal jen shorts XOXO Vice Austin cardign. Oragnic drinking vineger freegen pickled</p>
<p><%= link_to "Sign Up To Write A Review", new_user_registration_path, class: "btn btn-primary btn-lg" %></p>
</div>
<% end %>
<div class="row">
<% @movies.each do |movie| %>
<div class="col-sm-6 col-md-3">
<div class="thumbnail">
<%= link_to (image_tag movie.image.url(:medium), class: 'image'), movie %>
</div>
</div>
<% end %>
</div>
这是我访问http://localhost:3000时要在浏览器中呈现的文件。
show.html.erb
<div class="panel panel-default">
<div class="panel-body">
<div class="row">
<div class="col-md-4">
<%= image_tag @movie.image.url(:medium) %>
<div class="table-responsive">
<table class="table">
<tbody>
<tr>
<td><strong>Title:</strong></td>
<td><%= @movie.title %></td>
</tr>
<tr>
<td><strong>Description:</strong></td>
<td><%= @movie.description %></td>
</tr>
<tr>
<td><strong>Movie length:</strong></td>
<td><%= @movie.movie_length %></td>
</tr>
<tr>
<td><strong>Director:</strong></td>
<td><%= @movie.director %></td>
</tr>
<tr>
<td><strong>Rating:</strong></td>
<td><%= @movie.rating %></td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
<%= link_to 'Edit', edit_movie_path(@movie) %> |
<%= link_to 'Back', movies_path %>
我在另一台机器上运行该项目,并且该项目正常运行,仅在我的系统中无法运行
答案 0 :(得分:0)
您描述的行为与针对Windows的ruby-installer所描述的问题一致。 proposed solution要
请尝试使用“带有Ruby和Rails的命令提示符”而不是Git Bash
这说明在Windows上,您需要确保使用正确的命令提示符来正确加载Ruby环境。
如果这种方法行不通,则可能采用另一种解决方案,将Windows Subsystem for Linux on Windows 10用于您的Rails应用程序(最终也可能会部署在Linux上)。
答案 1 :(得分:0)
这是版本不匹配的问题。我不小心更新了计算机中的rails版本,但在gem文件中定义了较早版本,因此版本不匹配,因此无法在localhost:3000
中打开项目。