Git Product home page Git Product logo

django-job-portal's Introduction

Job Interview

Django Job Portal

Django Job Portal

An open source online job portal.

forks stars watchers github Actions

Live: Demo or Second Demo

Used Tech Stack

  1. Django
  2. Sqlite

Screenshots

Home page

Resume template page

Login page

Add new position as employer

Job details

Swagger API

Local environment

Install

  1. Create a virtual environment

    virtualenv venv

    Or

    python3.8 -m venv venv

  2. Activate it

    source venv/bin/activate

  3. Clone the repository and install the packages in the virtual env:

    pip install -r requirements.txt

  4. Add .env file.

    cp .env.dev.sample .env

  5. Add Github client ID and client secret in the .env file

Run

1.With the venv activate it, execute:

python manage.py collectstatic

Note : Collect static is not necessary when debug is True (in dev mode)

  1. Create initial database:

    python manage.py migrate

  2. Load demo data (optional):

    python manage.py loaddata fixtures/app_name_initial_data.json --app app.model_name

  3. Run server:

    python manage.py runserver

  4. Default django admin credentials:

    email: [email protected] password: admin

Run test:

python manage.py test

To dump data:

python manage.py dumpdata --format=json --indent 4 app_name > app_name/fixtures/app_name_initial_data.json

Show your support by ๐ŸŒŸ the project!!

django-job-portal's People

Contributors

cherylhughey avatar dependabot[bot] avatar dev-ayushagrawal avatar imrezwan avatar manjurulhoque avatar neodark avatar pavankumardontha avatar rakibul-islam-raju avatar todoyel avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

django-job-portal's Issues

2 tests failed after basic installtion

Hi,

run the test and got:

(portal) C:\Users\liron\work\qualiifly\django-job-portal>python manage.py test
Found 32 test(s).
Creating test database for alias 'default'...
System check identified no issues (0 silenced).
..............E........FC:\envs\portal\lib\site-packages\django\db\models\fields_init_.py:1409: RuntimeWarning: DateTimeField Job.last_date received a naive datetime (2022-02-23 10:06:16.518056) while time zone support is active.
warnings.warn("DateTimeField %s received a naive datetime (%s)"
.C:\envs\portal\lib\site-packages\django\db\models\fields_init_.py:1409: RuntimeWarning: DateTimeField Job.last_date received a naive datetime (2022-02-23 10:06:18.628519) while time zone support is active.
warnings.warn("DateTimeField %s received a naive datetime (%s)"
F......

ERROR: test_email_label (tests.accounts.test_models.TestUserModel)

Traceback (most recent call last):
File "C:\Users\liron\work\qualiifly\django-job-portal\tests\accounts\test_models.py", line 28, in test_email_label
user = User.objects.get(id=1)
File "C:\envs\portal\lib\site-packages\django\db\models\manager.py", line 85, in manager_method
return getattr(self.get_queryset(), name)(*args, **kwargs)
File "C:\envs\portal\lib\site-packages\django\db\models\query.py", line 439, in get
raise self.model.DoesNotExist(
accounts.models.User.DoesNotExist: User matching query does not exist.

======================================================================
FAIL: test_valid_and_save_form (tests.jobsapp.test_forms.TestCreateJobForm)

Traceback (most recent call last):
File "C:\Users\liron\work\qualiifly\django-job-portal\tests\jobsapp\test_forms.py", line 36, in test_valid_and_save_form
self.assertTrue(form.is_valid())
AssertionError: False is not true

======================================================================
FAIL: test_get_absolute_url (tests.jobsapp.test_models.TestJobModel)

Traceback (most recent call last):
File "C:\Users\liron\work\qualiifly\django-job-portal\tests\jobsapp\test_models.py", line 43, in test_get_absolute_url
self.assertURLEqual(self.job.get_absolute_url(), f"/{self.language_code}/jobs/1")
File "C:\envs\portal\lib\site-packages\django\test\testcases.py", line 412, in assertURLEqual
self.assertEqual(
AssertionError: '/en/jobs/2/' != '/en/jobs/1'

  • /en/jobs/2/
    ? ^^
  • /en/jobs/1
    ? ^
    : Expected '/en/jobs/2/' to equal '/en/jobs/1'.

Ran 32 tests in 23.754s

FAILED (failures=2, errors=1)
Destroying test database for alias 'default'...

What is use for Graphene in this project?

I'm constantly getting some errors with Graphene. First, it was not working with Django 4. I had to downgrade Django to 3.2.

Now I'm getting the following error.

File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
File "<frozen importlib._bootstrap>", line 991, in _find_and_load
File "<frozen importlib._bootstrap>", line 975, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 843, in exec_module
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "/Users/mukesh/Projects/hunch/django-job-portal/.venv/lib/python3.8/site-packages/graphene_django/__init__.py", line 1, in <module>
  from .types import (
File "/Users/mukesh/Projects/hunch/django-job-portal/.venv/lib/python3.8/site-packages/graphene_django/types.py", line 9, in <module>
  from .converter import convert_django_field_with_choices
File "/Users/mukesh/Projects/hunch/django-job-portal/.venv/lib/python3.8/site-packages/graphene_django/converter.py", line 8, in <module>
  from graphene.utils.str_converters import to_camel_case, to_const
ImportError: cannot import name 'to_const' from 'graphene.utils.str_converters' (/Users/mukesh/Projects/hunch/django-job-portal/.venv/lib/python3.8/site-packages/graphene/utils/str_converters.py)

If I remove the Graphene will the project work?

Can't load initial data and can't create any tags from Django admin.

The line in the instructions about loading initial data seems wrong because there is no fixtures/ directory within the project.

I tried adding in "Python" / "C++" as Tags in the django admin panel and they don't show up when an employer goes to create a job (so the job form cannot be completed/submitted).

All I need is for Tags to work, not the intial data. I am going to start over fresh with your repository's code.

Couldn't find default admin credentials

Checklist

  • [ x ] I have verified that that issue exists against the master branch.
  • [ x ] I have searched for similar issues in both open and closed tickets and cannot find a duplicate.
  • [ x ] I have reduced the issue to the simplest possible case.

Describe the bug
I might be blind, so help me with this. I couldn't find the default admin credentials anywhere.
I tried opening the sqlite file in notepad, but the max anything i could find was [email protected] (one of the users)
I don't really have expertise in database, to I wondered, if anyone is able to use this application, you could guide me towards where I could find the default admin credentials, or if they even exist?

If someone, comments, I could open a PR to add the creds in the Readme file

Specify the team with the correct label
enhancement

Expected behavior
Could you help me, I can create PR to add the default credentials in the Readme.md

Found number of jobs only shows the current pages job number

Checklist

  • I have verified that that issue exists against the master branch.
  • I have searched for similar issues in both open and closed tickets and cannot find a duplicate.
  • I have reduced the issue to the simplest possible case.

Describe the bug
When we open all job list pages, we can see "found jobs" only for the current page.

To Reproduce
Steps to reproduce the behavior:

  1. Go to the job list page
  2. Observe the found job number
  3. Go to the next page
  4. See the job numbers

Expected behavior
The job list page should show the total number of jobs found.

Screenshots
image

Desktop (please complete the following information):

  • OS: Windows 11
  • Browser: Chrome

should user be deleted when job is deleted?

Hello

I am new to Django, but I am also creating my own job board in Django, so that's why I looked into your code :) Please consider this "issue" not as a real issue submission but more like a question to probably more experienced Django dev.

in django-job-portal/jobsapp/models.py you have for example:

class Job(models.Model):
    user = models.ForeignKey(User, on_delete=models.CASCADE)

does it really should look like it looks? AFAIK it means "when job is being deleted, deleted the user who submitted the job as well". Am I correct?

If so, do you really think it should be like that? Why the user should be deleted? What if one user submitted more than one job offer? Then if you delete one job, the user will be deleted and then other his jobs will be orphaned, right?

project not running

import environ
File "C:\Users\omkar\AppData\Local\Programs\Python\Python310\lib\site-packages\environ.py", line 114
raise ValueError, "No frame marked with %s." % fname

Highlight active navbar link is not wotking

Checklist

  • I have verified that that issue exists against the master branch.
  • I have searched for similar issues in both open and closed tickets and cannot find a duplicate.

Some Problems

Hi Manjurul,
Firstly thanks for sharing this work.
I have some problems and I want to ask to you because I'm new at Django.

I am using Django v2.2 and Python 3.6
1-) I get an error when add post a new job
2-) Other error when I click on a filled session at Dashboard -->[ Mark as Filled ] session

Are these general problems or just me?
Thanks

Demos

Neither demo site is working

Update pre-commit hooks

Describe the bug

The pre-commit-config was not updated and missing some common hooks.

Note for the maintainer

I will provide a PR and run a pass of cleanup over all files

Shows "403 forbidden" page when try to apply with employer account

Checklist

  • I have verified that that issue exists against the master branch.
  • I have searched for similar issues in both open and closed tickets and cannot find a duplicate.
  • I have reduced the issue to the simplest possible case.

Describe the bug
Shows "403 forbidden" page when try to apply with employer account

To Reproduce
Steps to reproduce the behavior:

  1. Go to any job details page
  2. Click on 'Apply for this job' button

Expected behavior
The "Apply for this job" button can be disabled or hidden for the employer account

Screenshots
the apply button
image
the forbidden page
image

Desktop (please complete the following information):

  • OS: Windows 11
  • Browser: Chrome

Add Docker to the project

When I was trying to run this project on my local machine, I faced many version-related issues like the python version, MS C++ build tool etc. That was frustrating for me. Can we add "docker" to this project? If you want, I can do that.

basic installation failed

Hi,

create venv
pip install -r requirements.txt
python manage.py collectstatic

getting the following error:

django-job-portal>python manage.py collectstatic
Post-processing 'vendor\bootstrap\js\bootstrap.min.js' failed!

Traceback (most recent call last):
File "manage.py", line 15, in
execute_from_command_line(sys.argv)
File "C:\envs\portal\lib\site-packages\django\core\management_init_.py", line 425, in execute_from_command_line
utility.execute()
File "C:\envs\portal\lib\site-packages\django\core\management_init_.py", line 419, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "C:\envs\portal\lib\site-packages\django\core\management\base.py", line 373, in run_from_argv
self.execute(*args, **cmd_options)
File "C:\envs\portal\lib\site-packages\django\core\management\base.py", line 417, in execute
output = self.handle(*args, **options)
File "C:\envs\portal\lib\site-packages\django\contrib\staticfiles\management\commands\collectstatic.py", line 187, in handle
collected = self.collect()
File "C:\envs\portal\lib\site-packages\django\contrib\staticfiles\management\commands\collectstatic.py", line 134, in collect
raise processed
whitenoise.storage.MissingFileError: The file 'vendor/bootstrap/js/bootstrap.min.js.map' could not be found with <whitenoise.storage.CompressedManifestStaticFilesStorage object at 0x00000223D8065CA0>.

The JS file 'vendor\bootstrap\js\bootstrap.min.js' references a file which could not be found:
vendor/bootstrap/js/bootstrap.min.js.map

Please check the URL references in this JS file, particularly any
relative paths which might be pointing to the wrong location.

Register and Login error

Register Employee and Register Employer functions are going error because of attribute error.
Also does login too.

Add rich text editor

When creating/updating a job, the description should be in the rich text editor

About us page not found (404)

Checklist

  • I have verified that that issue exists against the master branch.
  • I have searched for similar issues in both open and closed tickets and cannot find a duplicate.

Docker support

Add docker support and remember that the user should be able to run this project without docker properly.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.