Commit 9f93d517 by Đường Sỹ Hoàng

Jobs_list

parent 779f48c7
...@@ -34,6 +34,7 @@ gem "rubysl-open-uri" ...@@ -34,6 +34,7 @@ gem "rubysl-open-uri"
gem "whenever", require: false gem "whenever", require: false
gem "activerecord-import" gem "activerecord-import"
gem "config" gem "config"
gem "kaminari"
group :development, :test do group :development, :test do
# Call "byebug" anywhere in the code to stop execution and get a debugger console # Call "byebug" anywhere in the code to stop execution and get a debugger console
......
...@@ -133,6 +133,18 @@ GEM ...@@ -133,6 +133,18 @@ GEM
concurrent-ruby (~> 1.0) concurrent-ruby (~> 1.0)
jbuilder (2.9.1) jbuilder (2.9.1)
activesupport (>= 4.2.0) activesupport (>= 4.2.0)
kaminari (1.1.1)
activesupport (>= 4.1.0)
kaminari-actionview (= 1.1.1)
kaminari-activerecord (= 1.1.1)
kaminari-core (= 1.1.1)
kaminari-actionview (1.1.1)
actionview
kaminari-core (= 1.1.1)
kaminari-activerecord (1.1.1)
activerecord
kaminari-core (= 1.1.1)
kaminari-core (1.1.1)
listen (3.1.5) listen (3.1.5)
rb-fsevent (~> 0.9, >= 0.9.4) rb-fsevent (~> 0.9, >= 0.9.4)
rb-inotify (~> 0.9, >= 0.9.7) rb-inotify (~> 0.9, >= 0.9.7)
...@@ -290,6 +302,7 @@ DEPENDENCIES ...@@ -290,6 +302,7 @@ DEPENDENCIES
config config
devise devise
jbuilder (~> 2.7) jbuilder (~> 2.7)
kaminari
listen (>= 3.0.5, < 3.2) listen (>= 3.0.5, < 3.2)
mechanize mechanize
mysql2 mysql2
......
/* universal */ /* universal */
$font-stack: Arial,Helvetica, sans-serif; $font-stack: Arial,Helvetica, sans-serif;
$primary-color: #B6B6B6; $primary-color: rgb(164, 165, 167);
$sub-color: gainsboro; $sub-color: gainsboro;
body { body {
...@@ -110,3 +110,10 @@ h1, h2, h3, h4, h5, h6 { ...@@ -110,3 +110,10 @@ h1, h2, h3, h4, h5, h6 {
margin-left: 70px; margin-left: 70px;
top: 300px; top: 300px;
} }
.jobs-list {
color: rgb(4, 4, 14);
background-color: rgb(23, 23, 175);
display:block;
}
class JobsController < ApplicationController
def index
@all_jobs = Job.all.page(params[:page]).per(20)
end
end
...@@ -6,4 +6,7 @@ class Job < ApplicationRecord ...@@ -6,4 +6,7 @@ class Job < ApplicationRecord
@latest ||= order(created_at: :desc).take(Settings.top.job.limit) @latest ||= order(created_at: :desc).take(Settings.top.job.limit)
end end
# def self.all_jobs
# @all_jobs ||= all.sort_by(& :created_at)
# end
end end
<div class="jobs-list">
<div class="row row-cols">
<div class="col">
Title: <%= jobs_list.title %>
</div>
<div class="col">
Salary: <%= jobs_list.salary%>
</div>
<div class="col">
<%= jobs_list.position %>
</div>
</div>
<div class="row row-cols">
<div class="col">
Description: <%= jobs_list.description %>
</div>
</div>
<div class="row row-cols">
<div class="col">
Requirement: <%= jobs_list.requirement %>
</div>
</div>
</br>
</div>
<div class="center jumbotron">
<head>
<title><%= yield(:title) %> Venjob</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
</head>
</div>
<!--Display all jobs -->
<div class="all jobs">
<div class="job-title-wrapper">
<h3>All Jobs</h3>
</div>
<%= paginate @all_jobs %>
<div class="row row-cols-1">
<div class="job-content-wrapper">
<%= render partial: "jobs/jobs_list", collection: @all_jobs %>
</div>
</div>
<%= paginate @all_jobs %>
...@@ -2,8 +2,9 @@ Rails.application.routes.draw do ...@@ -2,8 +2,9 @@ Rails.application.routes.draw do
root "top#index" root "top#index"
resources :cities, only: :index resources :cities, only: :index
resources :industries, only: :index resources :industries, only: :index
resource :top, only: :index resources :top, only: :index
resource :users, only: :show resources :users, only: :show
resources :jobs, only: :index
devise_for :users devise_for :users
as :user do as :user do
get "login" , to: "devise/sessions#new" get "login" , to: "devise/sessions#new"
...@@ -15,5 +16,6 @@ Rails.application.routes.draw do ...@@ -15,5 +16,6 @@ Rails.application.routes.draw do
get "forgot_password", to: "devise/passwords#edit" get "forgot_password", to: "devise/passwords#edit"
get "reset_password", to: "devise/passwords#new" get "reset_password", to: "devise/passwords#new"
post "forgot_password.user/", to: "devise/passwords#create" post "forgot_password.user/", to: "devise/passwords#create"
put "reset_password.user", to: "devise/passwords#update"
end end
end end
...@@ -7,6 +7,6 @@ ...@@ -7,6 +7,6 @@
set :environment, "development" set :environment, "development"
set :output, "/crawler/config/import_log.log" set :output, "/crawler/config/import_log.log"
every 1.day at: '5:00 pm' do every 1.day at: '4:00 pm' do
rake "job:create" rake "job:create"
end end
...@@ -42,7 +42,7 @@ class DeviseCreateUsers < ActiveRecord::Migration[6.0] ...@@ -42,7 +42,7 @@ class DeviseCreateUsers < ActiveRecord::Migration[6.0]
add_index :users, :email, unique: true add_index :users, :email, unique: true
add_index :users, :username, unique: true add_index :users, :username, unique: true
add_index :users, :reset_digest, unique: true add_index :users, :reset_digest, unique: true
add_index :users, :confirmation_token, unique: true #add_index :users, :confirmation_token, unique: true
# add_index :users, :unlock_token, unique: true # add_index :users, :unlock_token, unique: true
end end
end end
class AddResetPasswordTouser < ActiveRecord::Migration[6.0] class AddResetPasswordToUser < ActiveRecord::Migration[6.0]
def change def change
add_column :users, :reset_password_token, :string add_column :users, :reset_password_token, :string
add_column :users, :reset_password_sent_at, :datetime add_column :users, :reset_password_sent_at, :datetime
......
class ChangeSalaryInJobs < ActiveRecord::Migration[6.0]
def change
change_column :jobs, :salary, :string
end
end
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
# #
# It's strongly recommended that you check this file into your version control system. # It's strongly recommended that you check this file into your version control system.
ActiveRecord::Schema.define(version: 2020_01_02_012922) do ActiveRecord::Schema.define(version: 2020_01_06_041448) do
create_table "cities", options: "ENGINE=InnoDB DEFAULT CHARSET=utf8", force: :cascade do |t| create_table "cities", options: "ENGINE=InnoDB DEFAULT CHARSET=utf8", force: :cascade do |t|
t.string "name" t.string "name"
...@@ -57,7 +57,7 @@ ActiveRecord::Schema.define(version: 2020_01_02_012922) do ...@@ -57,7 +57,7 @@ ActiveRecord::Schema.define(version: 2020_01_02_012922) do
t.text "description" t.text "description"
t.text "short_description" t.text "short_description"
t.integer "company_id" t.integer "company_id"
t.decimal "salary", precision: 10 t.string "salary"
t.integer "currency" t.integer "currency"
t.text "requirement" t.text "requirement"
t.string "position" t.string "position"
...@@ -96,6 +96,7 @@ ActiveRecord::Schema.define(version: 2020_01_02_012922) do ...@@ -96,6 +96,7 @@ ActiveRecord::Schema.define(version: 2020_01_02_012922) do
t.string "remember_digest" t.string "remember_digest"
t.datetime "activated_at" t.datetime "activated_at"
t.string "activation_digest" t.string "activation_digest"
t.datetime "confirmation_sent_at"
t.datetime "created_at", precision: 6, null: false t.datetime "created_at", precision: 6, null: false
t.datetime "updated_at", precision: 6, null: false t.datetime "updated_at", precision: 6, null: false
t.string "encrypted_password" t.string "encrypted_password"
......
...@@ -34,7 +34,7 @@ namespace :job do ...@@ -34,7 +34,7 @@ namespace :job do
requirement = job_page.css("div.content_fck")[1].css("p").text requirement = job_page.css("div.content_fck")[1].css("p").text
end end
salary = job_page.css("div#showScroll.box2Detail").css("ul.DetailJobNew").css("li.bgLine2").css("p.fl_right").text salary = job_page.css("div#showScroll.box2Detail").css("ul.DetailJobNew").css("li.bgLine2").css("p.fl_right")[1].text
position = job_page.css("div#showScroll.box2Detail").css("ul.DetailJobNew").css("li.bgLine1").css("p.fl_left").text position = job_page.css("div#showScroll.box2Detail").css("ul.DetailJobNew").css("li.bgLine1").css("p.fl_left").text
rescue rescue
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment