diff --git a/Gemfile b/Gemfile
index a8a4af7..eb8a30c 100644
--- a/Gemfile
+++ b/Gemfile
@@ -79,6 +79,8 @@ end
group :development do
# Use console on exceptions pages [https://github.com/rails/web-console]
gem "web-console"
+
+ gem 'bullet', '~> 8.0'
end
group :production do
diff --git a/Gemfile.lock b/Gemfile.lock
index a88d71d..1c304d7 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -121,6 +121,9 @@ GEM
brakeman (7.0.0)
racc
builder (3.3.0)
+ bullet (8.0.1)
+ activesupport (>= 3.0.0)
+ uniform_notifier (~> 1.11)
capybara (3.40.0)
addressable
matrix
@@ -478,6 +481,7 @@ GEM
unicode-display_width (3.1.4)
unicode-emoji (~> 4.0, >= 4.0.4)
unicode-emoji (4.0.4)
+ uniform_notifier (1.16.0)
uri (1.0.2)
useragent (0.16.11)
warden (1.2.9)
@@ -515,6 +519,7 @@ DEPENDENCIES
aws-sdk-s3 (~> 1.170)
bootsnap
brakeman
+ bullet (~> 8.0)
capybara
cssbundling-rails
debug
diff --git a/app/controllers/weather_arts_controller.rb b/app/controllers/weather_arts_controller.rb
index a01f226..68b24cc 100644
--- a/app/controllers/weather_arts_controller.rb
+++ b/app/controllers/weather_arts_controller.rb
@@ -3,16 +3,6 @@ class WeatherArtsController < ApplicationController
@city = City.friendly.find(params[:city_id])
@weather_art = @city.weather_arts.friendly.find(params[:slug])
- @previous_weather_art = @city.weather_arts
- .where("id < ?", @weather_art.id)
- .order(id: :desc)
- .first
-
- @next_weather_art = @city.weather_arts
- .where("id > ?", @weather_art.id)
- .order(id: :asc)
- .first
-
ahoy.track "View Weather Art", {
weather_art_id: @weather_art.id,
city_id: @weather_art.city_id,
diff --git a/app/javascript/controllers/index.js b/app/javascript/controllers/index.js
index f0137f8..61604f3 100644
--- a/app/javascript/controllers/index.js
+++ b/app/javascript/controllers/index.js
@@ -7,8 +7,10 @@ import HelloController from "./hello_controller"
import PhotoSwipeLightBoxController from "./photo_swipe_lightbox_controller"
import FlashMessageController from "./flash_controller"
import SearchController from "./search_controller"
+import PageLoadTimeController from "./page_load_time_controller"
application.register("hello", HelloController)
application.register("photo-swipe-lightbox", PhotoSwipeLightBoxController)
application.register("flash", FlashMessageController)
application.register("search", SearchController)
+application.register("page-load-time", PageLoadTimeController)
diff --git a/app/javascript/controllers/page_load_time_controller.js b/app/javascript/controllers/page_load_time_controller.js
new file mode 100644
index 0000000..c9e2197
--- /dev/null
+++ b/app/javascript/controllers/page_load_time_controller.js
@@ -0,0 +1,18 @@
+import {Controller} from "@hotwired/stimulus"
+
+export default class extends Controller {
+ static targets = ["timer"]
+
+ connect() {
+ // 记录页面加载开始的时间
+ const startTime = performance.now();
+
+ // 监听页面加载完成事件
+ window.addEventListener('load', () => {
+ const endTime = performance.now();
+ const loadTime = endTime - startTime;
+ // 更新显示
+ this.timerTarget.textContent = loadTime;
+ });
+ }
+}
\ No newline at end of file
diff --git a/app/views/layouts/_footer.html.erb b/app/views/layouts/_footer.html.erb
new file mode 100644
index 0000000..b787925
--- /dev/null
+++ b/app/views/layouts/_footer.html.erb
@@ -0,0 +1,24 @@
+
+
diff --git a/app/views/layouts/application.html.erb b/app/views/layouts/application.html.erb
index 9515c72..7366b3e 100644
--- a/app/views/layouts/application.html.erb
+++ b/app/views/layouts/application.html.erb
@@ -64,26 +64,7 @@
<%= yield %>
-
-
+ <%= render 'layouts/footer' %>