Compare commits
No commits in common. 'main' and 'zaq_branch' have entirely different histories.
main
...
zaq_branch
@ -1,7 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="JavaScriptSettings">
|
||||
<option name="languageLevel" value="ES6" />
|
||||
</component>
|
||||
<component name="ProjectRootManager" version="2" project-jdk-name="Python 3.6 (django_music)" project-jdk-type="Python SDK" />
|
||||
</project>
|
||||
@ -1,8 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectModuleManager">
|
||||
<modules>
|
||||
<module fileurl="file://$PROJECT_DIR$/.idea/music.iml" filepath="$PROJECT_DIR$/.idea/music.iml" />
|
||||
</modules>
|
||||
</component>
|
||||
</project>
|
||||
@ -1,31 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="PYTHON_MODULE" version="4">
|
||||
<component name="FacetManager">
|
||||
<facet type="django" name="Django">
|
||||
<configuration>
|
||||
<option name="rootFolder" value="$MODULE_DIR$" />
|
||||
<option name="settingsModule" value="music/settings.py" />
|
||||
<option name="manageScript" value="$MODULE_DIR$/manage.py" />
|
||||
<option name="environment" value="<map/>" />
|
||||
<option name="doNotUseTestRunner" value="false" />
|
||||
<option name="trackFilePattern" value="migrations" />
|
||||
</configuration>
|
||||
</facet>
|
||||
</component>
|
||||
<component name="NewModuleRootManager">
|
||||
<content url="file://$MODULE_DIR$" />
|
||||
<orderEntry type="jdk" jdkName="Python 3.6 (django_music)" jdkType="Python SDK" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
</component>
|
||||
<component name="TemplatesService">
|
||||
<option name="TEMPLATE_CONFIGURATION" value="Django" />
|
||||
<option name="TEMPLATE_FOLDERS">
|
||||
<list>
|
||||
<option value="$MODULE_DIR$/../music\templates" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="TestRunnerService">
|
||||
<option name="PROJECT_TEST_RUNNER" value="Unittests" />
|
||||
</component>
|
||||
</module>
|
||||
@ -1,6 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="VcsDirectoryMappings">
|
||||
<mapping directory="$PROJECT_DIR$" vcs="Git" />
|
||||
</component>
|
||||
</project>
|
||||
@ -1,842 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ChangeListManager">
|
||||
<list default="true" id="05bf9cdd-8760-4739-880a-b4cd3f04cfab" name="Default Changelist" comment="">
|
||||
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/comment/urls.py" beforeDir="false" afterPath="$PROJECT_DIR$/comment/urls.py" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/comment/views.py" beforeDir="false" afterPath="$PROJECT_DIR$/comment/views.py" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/logs/music.log" beforeDir="false" afterPath="$PROJECT_DIR$/logs/music.log" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/music/settings.py" beforeDir="false" afterPath="$PROJECT_DIR$/music/settings.py" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/music/urls.py" beforeDir="false" afterPath="$PROJECT_DIR$/music/urls.py" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/play/urls.py" beforeDir="false" afterPath="$PROJECT_DIR$/play/urls.py" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/play/views.py" beforeDir="false" afterPath="$PROJECT_DIR$/play/views.py" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/ranking/templates/ranking.html" beforeDir="false" afterPath="$PROJECT_DIR$/ranking/templates/ranking.html" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/ranking/urls.py" beforeDir="false" afterPath="$PROJECT_DIR$/ranking/urls.py" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/ranking/views.py" beforeDir="false" afterPath="$PROJECT_DIR$/ranking/views.py" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/search/urls.py" beforeDir="false" afterPath="$PROJECT_DIR$/search/urls.py" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/search/views.py" beforeDir="false" afterPath="$PROJECT_DIR$/search/views.py" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/user/urls.py" beforeDir="false" afterPath="$PROJECT_DIR$/user/urls.py" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/user/views.py" beforeDir="false" afterPath="$PROJECT_DIR$/user/views.py" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/uwsgi.pid" beforeDir="false" afterPath="$PROJECT_DIR$/uwsgi.pid" afterDir="false" />
|
||||
</list>
|
||||
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
|
||||
<option name="SHOW_DIALOG" value="false" />
|
||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
|
||||
<option name="LAST_RESOLUTION" value="IGNORE" />
|
||||
</component>
|
||||
<component name="DjangoConsoleOptions" custom-start-script="import sys; print('Python %s on %s' % (sys.version, sys.platform)) import django; print('Django %s' % django.get_version()) sys.path.extend([WORKING_DIR_AND_PYTHON_PATHS]) if 'setup' in dir(django): django.setup() import django_manage_shell; django_manage_shell.run(PROJECT_ROOT)">
|
||||
<option name="myCustomStartScript" value="import sys; print('Python %s on %s' % (sys.version, sys.platform)) import django; print('Django %s' % django.get_version()) sys.path.extend([WORKING_DIR_AND_PYTHON_PATHS]) if 'setup' in dir(django): django.setup() import django_manage_shell; django_manage_shell.run(PROJECT_ROOT)" />
|
||||
</component>
|
||||
<component name="FileEditorManager">
|
||||
<leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/play/urls.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="323">
|
||||
<caret line="20" column="23" selection-start-line="20" selection-start-column="23" selection-end-line="20" selection-end-column="23" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/comment/urls.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="297">
|
||||
<caret line="18" lean-forward="true" selection-start-line="18" selection-end-line="18" />
|
||||
<folding>
|
||||
<element signature="e#629#657#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/comment/views.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="136">
|
||||
<caret line="8" lean-forward="true" selection-start-line="8" selection-end-line="8" />
|
||||
<folding>
|
||||
<element signature="e#0#72#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$USER_HOME$/.workspace/django_music/lib/python3.6/site-packages/django/views/generic/base.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="138">
|
||||
<caret line="96" selection-start-line="96" selection-end-line="96" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/uwsgi.pid">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/README.md">
|
||||
<provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]">
|
||||
<state split_layout="SPLIT">
|
||||
<first_editor />
|
||||
<second_editor />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="true">
|
||||
<entry file="file://$PROJECT_DIR$/uwsgi.ini">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="187">
|
||||
<caret line="11" column="26" lean-forward="true" selection-start-line="11" selection-start-column="26" selection-end-line="11" selection-end-column="26" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/static/favicon.ico">
|
||||
<provider selected="true" editor-type-id="images" />
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/static/__init__.py">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/logs/music.log">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="-712">
|
||||
<caret line="1531" lean-forward="true" selection-start-line="1531" selection-end-line="1531" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
</leaf>
|
||||
</component>
|
||||
<component name="FindInProjectRecents">
|
||||
<findStrings>
|
||||
<find>query</find>
|
||||
<find>csrf</find>
|
||||
<find>csrfmiddlewaretoken</find>
|
||||
<find>song_type</find>
|
||||
<find>3</find>
|
||||
<find>st</find>
|
||||
<find>datu</find>
|
||||
<find>stat</find>
|
||||
<find>static</find>
|
||||
<find>all_ranking</find>
|
||||
<find>model</find>
|
||||
<find>play_list</find>
|
||||
<find>form</find>
|
||||
<find>session</find>
|
||||
<find>download</find>
|
||||
<find>url</find>
|
||||
<find>search_song</find>
|
||||
<find>type</find>
|
||||
<find>logout.html</find>
|
||||
<find>logout</find>
|
||||
<find>login</find>
|
||||
<find>song_company</find>
|
||||
<find>item</find>
|
||||
<find>down</find>
|
||||
<find>comment</find>
|
||||
<find>注册</find>
|
||||
<find>submit</find>
|
||||
<find>button</find>
|
||||
<find>歌曲点评</find>
|
||||
<find>post</find>
|
||||
</findStrings>
|
||||
</component>
|
||||
<component name="Git.Settings">
|
||||
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
|
||||
</component>
|
||||
<component name="IdeDocumentHistory">
|
||||
<option name="CHANGED_PATHS">
|
||||
<list>
|
||||
<option value="$PROJECT_DIR$/music/__init__.py" />
|
||||
<option value="$PROJECT_DIR$/index/migrations/0001_initial.py" />
|
||||
<option value="$PROJECT_DIR$/music/wsgi.py" />
|
||||
<option value="$USER_HOME$/.workspace/django_music/lib/python3.6/site-packages/django/db/backends/mysql/base.py" />
|
||||
<option value="$USER_HOME$/.workspace/django_music/lib/python3.6/site-packages/django/db/backends/mysql/operations.py" />
|
||||
<option value="$PROJECT_DIR$/uwsgi.ini" />
|
||||
<option value="$PROJECT_DIR$/manage.py" />
|
||||
<option value="$PROJECT_DIR$/index/templates/index.html" />
|
||||
<option value="$PROJECT_DIR$/user/models.py" />
|
||||
<option value="$PROJECT_DIR$/wyy.py" />
|
||||
<option value="$PROJECT_DIR$/index/views.py" />
|
||||
<option value="$PROJECT_DIR$/index/urls.py" />
|
||||
<option value="$PROJECT_DIR$/index/models.py" />
|
||||
<option value="$PROJECT_DIR$/index/admin.py" />
|
||||
<option value="$PROJECT_DIR$/user/form.py" />
|
||||
<option value="$PROJECT_DIR$/README.md" />
|
||||
<option value="$PROJECT_DIR$/requirements.txt" />
|
||||
<option value="$PROJECT_DIR$/music/settings.py" />
|
||||
<option value="$PROJECT_DIR$/templates/title_base.html" />
|
||||
<option value="$PROJECT_DIR$/search/templates/search.html" />
|
||||
<option value="$PROJECT_DIR$/search/views.py" />
|
||||
<option value="$PROJECT_DIR$/ranking/urls.py" />
|
||||
<option value="$PROJECT_DIR$/user/templates/home.html" />
|
||||
<option value="$PROJECT_DIR$/user/urls.py" />
|
||||
<option value="$PROJECT_DIR$/search/urls.py" />
|
||||
<option value="$PROJECT_DIR$/music/urls.py" />
|
||||
<option value="$PROJECT_DIR$/play/views.py" />
|
||||
<option value="$PROJECT_DIR$/ranking/templates/ranking.html" />
|
||||
<option value="$PROJECT_DIR$/ranking/views.py" />
|
||||
<option value="$PROJECT_DIR$/comment/templates/comment.html" />
|
||||
<option value="$PROJECT_DIR$/play/urls.py" />
|
||||
<option value="$PROJECT_DIR$/user/views.py" />
|
||||
<option value="$PROJECT_DIR$/comment/urls.py" />
|
||||
<option value="$PROJECT_DIR$/comment/views.py" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="ProjectFrameBounds">
|
||||
<option name="x" value="30" />
|
||||
<option name="y" value="23" />
|
||||
<option name="width" value="1435" />
|
||||
<option name="height" value="825" />
|
||||
</component>
|
||||
<component name="ProjectView">
|
||||
<navigator proportions="" version="1">
|
||||
<foldersAlwaysOnTop value="true" />
|
||||
</navigator>
|
||||
<panes>
|
||||
<pane id="ProjectPane">
|
||||
<subPane>
|
||||
<expand>
|
||||
<path>
|
||||
<item name="music" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="music" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
</expand>
|
||||
<select />
|
||||
</subPane>
|
||||
</pane>
|
||||
<pane id="Scope" />
|
||||
</panes>
|
||||
</component>
|
||||
<component name="PropertiesComponent">
|
||||
<property name="SHARE_PROJECT_CONFIGURATION_FILES" value="true" />
|
||||
<property name="WebServerToolWindowFactoryState" value="false" />
|
||||
<property name="last_opened_file_path" value="$PROJECT_DIR$/static/image" />
|
||||
<property name="nodejs_interpreter_path.stuck_in_default_project" value="undefined stuck path" />
|
||||
<property name="nodejs_npm_path_reset_for_default_project" value="true" />
|
||||
<property name="run.code.analysis.last.selected.profile" value="pProject Default" />
|
||||
<property name="settings.editor.selected.configurable" value="com.jetbrains.python.configuration.PyActiveSdkModuleConfigurable" />
|
||||
</component>
|
||||
<component name="RecentsManager">
|
||||
<key name="CopyFile.RECENT_KEYS">
|
||||
<recent name="$PROJECT_DIR$/static/image" />
|
||||
</key>
|
||||
</component>
|
||||
<component name="RunDashboard">
|
||||
<option name="ruleStates">
|
||||
<list>
|
||||
<RuleState>
|
||||
<option name="name" value="ConfigurationTypeDashboardGroupingRule" />
|
||||
</RuleState>
|
||||
<RuleState>
|
||||
<option name="name" value="StatusDashboardGroupingRule" />
|
||||
</RuleState>
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="RunManager" selected="Python.manage">
|
||||
<configuration name="manage" type="PythonConfigurationType" factoryName="Python" temporary="true">
|
||||
<module name="music" />
|
||||
<option name="INTERPRETER_OPTIONS" value="" />
|
||||
<option name="PARENT_ENVS" value="true" />
|
||||
<envs>
|
||||
<env name="PYTHONUNBUFFERED" value="1" />
|
||||
</envs>
|
||||
<option name="SDK_HOME" value="" />
|
||||
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
|
||||
<option name="IS_MODULE_SDK" value="true" />
|
||||
<option name="ADD_CONTENT_ROOTS" value="true" />
|
||||
<option name="ADD_SOURCE_ROOTS" value="true" />
|
||||
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
|
||||
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/manage.py" />
|
||||
<option name="PARAMETERS" value="runserver 8001" />
|
||||
<option name="SHOW_COMMAND_LINE" value="false" />
|
||||
<option name="EMULATE_TERMINAL" value="false" />
|
||||
<option name="MODULE_MODE" value="false" />
|
||||
<option name="REDIRECT_INPUT" value="false" />
|
||||
<option name="INPUT_FILE" value="" />
|
||||
<method v="2" />
|
||||
</configuration>
|
||||
<configuration name="settings" type="PythonConfigurationType" factoryName="Python" temporary="true">
|
||||
<module name="music" />
|
||||
<option name="INTERPRETER_OPTIONS" value="" />
|
||||
<option name="PARENT_ENVS" value="true" />
|
||||
<envs>
|
||||
<env name="PYTHONUNBUFFERED" value="1" />
|
||||
</envs>
|
||||
<option name="SDK_HOME" value="" />
|
||||
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$/music" />
|
||||
<option name="IS_MODULE_SDK" value="true" />
|
||||
<option name="ADD_CONTENT_ROOTS" value="true" />
|
||||
<option name="ADD_SOURCE_ROOTS" value="true" />
|
||||
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
|
||||
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/music/settings.py" />
|
||||
<option name="PARAMETERS" value="" />
|
||||
<option name="SHOW_COMMAND_LINE" value="false" />
|
||||
<option name="EMULATE_TERMINAL" value="false" />
|
||||
<option name="MODULE_MODE" value="false" />
|
||||
<option name="REDIRECT_INPUT" value="false" />
|
||||
<option name="INPUT_FILE" value="" />
|
||||
<method v="2" />
|
||||
</configuration>
|
||||
<configuration name="views (1)" type="PythonConfigurationType" factoryName="Python" temporary="true">
|
||||
<module name="music" />
|
||||
<option name="INTERPRETER_OPTIONS" value="" />
|
||||
<option name="PARENT_ENVS" value="true" />
|
||||
<envs>
|
||||
<env name="PYTHONUNBUFFERED" value="1" />
|
||||
</envs>
|
||||
<option name="SDK_HOME" value="" />
|
||||
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$/search" />
|
||||
<option name="IS_MODULE_SDK" value="true" />
|
||||
<option name="ADD_CONTENT_ROOTS" value="true" />
|
||||
<option name="ADD_SOURCE_ROOTS" value="true" />
|
||||
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
|
||||
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/search/views.py" />
|
||||
<option name="PARAMETERS" value="" />
|
||||
<option name="SHOW_COMMAND_LINE" value="false" />
|
||||
<option name="EMULATE_TERMINAL" value="false" />
|
||||
<option name="MODULE_MODE" value="false" />
|
||||
<option name="REDIRECT_INPUT" value="false" />
|
||||
<option name="INPUT_FILE" value="" />
|
||||
<method v="2" />
|
||||
</configuration>
|
||||
<configuration name="views" type="PythonConfigurationType" factoryName="Python" temporary="true">
|
||||
<module name="music" />
|
||||
<option name="INTERPRETER_OPTIONS" value="" />
|
||||
<option name="PARENT_ENVS" value="true" />
|
||||
<envs>
|
||||
<env name="PYTHONUNBUFFERED" value="1" />
|
||||
</envs>
|
||||
<option name="SDK_HOME" value="" />
|
||||
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$/play" />
|
||||
<option name="IS_MODULE_SDK" value="true" />
|
||||
<option name="ADD_CONTENT_ROOTS" value="true" />
|
||||
<option name="ADD_SOURCE_ROOTS" value="true" />
|
||||
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
|
||||
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/play/views.py" />
|
||||
<option name="PARAMETERS" value="" />
|
||||
<option name="SHOW_COMMAND_LINE" value="false" />
|
||||
<option name="EMULATE_TERMINAL" value="false" />
|
||||
<option name="MODULE_MODE" value="false" />
|
||||
<option name="REDIRECT_INPUT" value="false" />
|
||||
<option name="INPUT_FILE" value="" />
|
||||
<method v="2" />
|
||||
</configuration>
|
||||
<configuration name="wyy" type="PythonConfigurationType" factoryName="Python" temporary="true">
|
||||
<module name="music" />
|
||||
<option name="INTERPRETER_OPTIONS" value="" />
|
||||
<option name="PARENT_ENVS" value="true" />
|
||||
<envs>
|
||||
<env name="PYTHONUNBUFFERED" value="1" />
|
||||
</envs>
|
||||
<option name="SDK_HOME" value="" />
|
||||
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
|
||||
<option name="IS_MODULE_SDK" value="true" />
|
||||
<option name="ADD_CONTENT_ROOTS" value="true" />
|
||||
<option name="ADD_SOURCE_ROOTS" value="true" />
|
||||
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
|
||||
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/wyy.py" />
|
||||
<option name="PARAMETERS" value="" />
|
||||
<option name="SHOW_COMMAND_LINE" value="false" />
|
||||
<option name="EMULATE_TERMINAL" value="false" />
|
||||
<option name="MODULE_MODE" value="false" />
|
||||
<option name="REDIRECT_INPUT" value="false" />
|
||||
<option name="INPUT_FILE" value="" />
|
||||
<method v="2" />
|
||||
</configuration>
|
||||
<configuration name="music" type="Python.DjangoServer" factoryName="Django server">
|
||||
<module name="music" />
|
||||
<option name="INTERPRETER_OPTIONS" value="" />
|
||||
<option name="PARENT_ENVS" value="true" />
|
||||
<envs>
|
||||
<env name="PYTHONUNBUFFERED" value="1" />
|
||||
</envs>
|
||||
<option name="SDK_HOME" value="" />
|
||||
<option name="WORKING_DIRECTORY" value="" />
|
||||
<option name="IS_MODULE_SDK" value="false" />
|
||||
<option name="ADD_CONTENT_ROOTS" value="true" />
|
||||
<option name="ADD_SOURCE_ROOTS" value="true" />
|
||||
<option name="launchJavascriptDebuger" value="false" />
|
||||
<option name="port" value="8000" />
|
||||
<option name="host" value="" />
|
||||
<option name="additionalOptions" value="" />
|
||||
<option name="browserUrl" value="" />
|
||||
<option name="runTestServer" value="false" />
|
||||
<option name="runNoReload" value="false" />
|
||||
<option name="useCustomRunCommand" value="false" />
|
||||
<option name="customRunCommand" value="" />
|
||||
<method v="2" />
|
||||
</configuration>
|
||||
<list>
|
||||
<item itemvalue="Django server.music" />
|
||||
<item itemvalue="Python.manage" />
|
||||
<item itemvalue="Python.views" />
|
||||
<item itemvalue="Python.settings" />
|
||||
<item itemvalue="Python.wyy" />
|
||||
<item itemvalue="Python.views (1)" />
|
||||
</list>
|
||||
<recent_temporary>
|
||||
<list>
|
||||
<item itemvalue="Python.manage" />
|
||||
<item itemvalue="Python.views" />
|
||||
<item itemvalue="Python.views (1)" />
|
||||
<item itemvalue="Python.wyy" />
|
||||
<item itemvalue="Python.settings" />
|
||||
</list>
|
||||
</recent_temporary>
|
||||
</component>
|
||||
<component name="SvnConfiguration">
|
||||
<configuration />
|
||||
</component>
|
||||
<component name="TaskManager">
|
||||
<task active="true" id="Default" summary="Default task">
|
||||
<changelist id="05bf9cdd-8760-4739-880a-b4cd3f04cfab" name="Default Changelist" comment="" />
|
||||
<created>1568122067539</created>
|
||||
<option name="number" value="Default" />
|
||||
<option name="presentableId" value="Default" />
|
||||
<updated>1568122067539</updated>
|
||||
<workItem from="1568122069690" duration="1078000" />
|
||||
<workItem from="1590048480276" duration="2780000" />
|
||||
<workItem from="1590126442938" duration="2094000" />
|
||||
<workItem from="1590128899823" duration="13863000" />
|
||||
<workItem from="1590155029777" duration="945000" />
|
||||
<workItem from="1590206394768" duration="3145000" />
|
||||
<workItem from="1590214361657" duration="499000" />
|
||||
<workItem from="1590215978065" duration="351000" />
|
||||
<workItem from="1590225650515" duration="3119000" />
|
||||
<workItem from="1590384209744" duration="8105000" />
|
||||
<workItem from="1590475942202" duration="17281000" />
|
||||
<workItem from="1590501264883" duration="1592000" />
|
||||
</task>
|
||||
<servers />
|
||||
</component>
|
||||
<component name="TimeTrackingManager">
|
||||
<option name="totallyTimeSpent" value="54852000" />
|
||||
</component>
|
||||
<component name="TodoView">
|
||||
<todo-panel id="selected-file">
|
||||
<is-autoscroll-to-source value="true" />
|
||||
</todo-panel>
|
||||
<todo-panel id="all">
|
||||
<are-packages-shown value="true" />
|
||||
<is-autoscroll-to-source value="true" />
|
||||
</todo-panel>
|
||||
</component>
|
||||
<component name="ToolWindowManager">
|
||||
<frame x="30" y="23" width="1435" height="825" extended-state="0" />
|
||||
<layout>
|
||||
<window_info active="true" content_ui="combo" id="Project" order="0" sideWeight="0.49796748" visible="true" weight="0.22541277" />
|
||||
<window_info id="Structure" order="1" sideWeight="0.5020325" side_tool="true" weight="0.26183844" />
|
||||
<window_info id="Favorites" order="2" side_tool="true" />
|
||||
<window_info anchor="bottom" id="Message" order="0" />
|
||||
<window_info anchor="bottom" id="Find" order="1" weight="0.3287858" />
|
||||
<window_info anchor="bottom" id="Run" order="2" sideWeight="0.49953574" visible="true" weight="0.32469305" />
|
||||
<window_info anchor="bottom" id="Debug" order="3" weight="0.39972714" />
|
||||
<window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
|
||||
<window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
|
||||
<window_info anchor="bottom" id="TODO" order="6" weight="0.3287858" />
|
||||
<window_info anchor="bottom" id="Docker" order="7" show_stripe_button="false" />
|
||||
<window_info anchor="bottom" id="Version Control" order="8" weight="0.3287858" />
|
||||
<window_info anchor="bottom" id="Database Changes" order="9" />
|
||||
<window_info anchor="bottom" id="Event Log" order="10" sideWeight="0.5011512" side_tool="true" weight="0.3287858" />
|
||||
<window_info anchor="bottom" id="Terminal" order="11" sideWeight="0.4988488" weight="0.32742155" />
|
||||
<window_info anchor="bottom" id="Python Console" order="12" />
|
||||
<window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
|
||||
<window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
|
||||
<window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
|
||||
<window_info anchor="right" id="SciView" order="3" />
|
||||
<window_info anchor="right" id="Database" order="4" />
|
||||
</layout>
|
||||
</component>
|
||||
<component name="TypeScriptGeneratedFilesManager">
|
||||
<option name="version" value="1" />
|
||||
</component>
|
||||
<component name="XDebuggerManager">
|
||||
<breakpoint-manager>
|
||||
<breakpoints>
|
||||
<line-breakpoint enabled="true" suspend="THREAD" type="python-line">
|
||||
<url>file://$PROJECT_DIR$/play/views.py</url>
|
||||
<line>56</line>
|
||||
<option name="timeStamp" value="7" />
|
||||
</line-breakpoint>
|
||||
</breakpoints>
|
||||
</breakpoint-manager>
|
||||
</component>
|
||||
<component name="com.intellij.coverage.CoverageDataManagerImpl">
|
||||
<SUITE FILE_PATH="coverage/music$settings.coverage" NAME="settings Coverage Results" MODIFIED="1590129244960" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/music" />
|
||||
<SUITE FILE_PATH="coverage/music$views.coverage" NAME="views Coverage Results" MODIFIED="1590490147597" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/play" />
|
||||
<SUITE FILE_PATH="coverage/music$wyy.coverage" NAME="wyy Coverage Results" MODIFIED="1590390924756" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$" />
|
||||
<SUITE FILE_PATH="coverage/music$views__1_.coverage" NAME="views (1) Coverage Results" MODIFIED="1590483295750" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$/search" />
|
||||
<SUITE FILE_PATH="coverage/music$manage.coverage" NAME="manage Coverage Results" MODIFIED="1590502707931" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$" />
|
||||
</component>
|
||||
<component name="debuggerHistoryManager">
|
||||
<expressions id="evaluateExpression">
|
||||
<expression>
|
||||
<expression-string>request.COOKIES</expression-string>
|
||||
<language-id>Python</language-id>
|
||||
<evaluation-mode>EXPRESSION</evaluation-mode>
|
||||
</expression>
|
||||
<expression>
|
||||
<expression-string>request.session</expression-string>
|
||||
<language-id>Python</language-id>
|
||||
<evaluation-mode>EXPRESSION</evaluation-mode>
|
||||
</expression>
|
||||
<expression>
|
||||
<expression-string>request</expression-string>
|
||||
<language-id>Python</language-id>
|
||||
<evaluation-mode>EXPRESSION</evaluation-mode>
|
||||
</expression>
|
||||
</expressions>
|
||||
</component>
|
||||
<component name="editorHistoryManager">
|
||||
<entry file="file://$PROJECT_DIR$/search/apps.py">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/search/admin.py">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/static/songLyric/飞云之下.txt" />
|
||||
<entry file="file://$PROJECT_DIR$/user/tests.py">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/user/models.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="136">
|
||||
<caret line="9" selection-start-line="9" selection-end-line="9" />
|
||||
<folding>
|
||||
<element signature="e#0#28#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/user/form.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="221">
|
||||
<caret line="15" column="22" selection-start-line="15" selection-start-column="22" selection-end-line="15" selection-end-column="22" />
|
||||
<folding>
|
||||
<element signature="e#0#54#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/user/apps.py">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/user/admin.py">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/user/__init__.py">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/static/songLyric/与我无关.txt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="306">
|
||||
<caret line="18" column="18" selection-start-line="18" selection-start-column="18" selection-end-line="18" selection-end-column="18" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/requirements.txt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="119">
|
||||
<caret line="7" lean-forward="true" selection-start-line="7" selection-end-line="7" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/comment/admin.py">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/index/admin.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="146">
|
||||
<caret line="41" lean-forward="true" selection-start-line="41" selection-end-line="41" />
|
||||
<folding>
|
||||
<element signature="e#0#32#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/templates/error404.html">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/search/__init__.py">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/search/templates/search.html">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="194">
|
||||
<caret line="15" column="36" selection-start-line="15" selection-start-column="31" selection-end-line="15" selection-end-column="36" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/index/views.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="278">
|
||||
<caret line="17" column="50" lean-forward="true" selection-start-line="17" selection-start-column="50" selection-end-line="17" selection-end-column="50" />
|
||||
<folding>
|
||||
<element signature="e#0#35#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/index/templates/index.html">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state>
|
||||
<caret column="53" selection-start-column="37" selection-end-column="53" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file:///Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/typing.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="156">
|
||||
<caret line="2278" column="8" selection-start-line="2278" selection-start-column="8" selection-end-line="2278" selection-end-column="8" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/templates/title_base.html">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="119">
|
||||
<caret line="7" column="40" lean-forward="true" selection-start-line="7" selection-start-column="40" selection-end-line="7" selection-end-column="40" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$USER_HOME$/.workspace/django_music/lib/python3.6/site-packages/django/template/defaulttags.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="201">
|
||||
<caret line="1313" selection-start-line="1313" selection-end-line="1314" selection-end-column="23" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/index/models.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="183">
|
||||
<caret line="44" column="8" selection-start-line="44" selection-start-column="4" selection-end-line="44" selection-end-column="8" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$USER_HOME$/.workspace/django_music/lib/python3.6/site-packages/django/http/response.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="138">
|
||||
<caret line="355" column="8" selection-start-line="355" selection-start-column="8" selection-end-line="355" selection-end-column="8" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$USER_HOME$/.workspace/django_music/lib/python3.6/site-packages/django/contrib/auth/decorators.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="156">
|
||||
<caret line="37" column="4" selection-start-line="37" selection-start-column="4" selection-end-line="37" selection-end-column="4" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/music/settings.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="-761">
|
||||
<caret line="64" column="55" selection-start-line="64" selection-start-column="46" selection-end-line="64" selection-end-column="55" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/index/urls.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="317">
|
||||
<caret line="27" column="3" selection-start-line="27" selection-start-column="3" selection-end-line="27" selection-end-column="3" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$USER_HOME$/.workspace/django_music/lib/python3.6/site-packages/django/core/handlers/base.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="228">
|
||||
<caret line="112" selection-start-line="112" selection-end-line="112" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/ranking/views.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="204">
|
||||
<caret line="12" column="60" lean-forward="true" selection-start-line="12" selection-start-column="60" selection-end-line="12" selection-end-column="60" />
|
||||
<folding>
|
||||
<element signature="e#0#35#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/music/urls.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="266">
|
||||
<caret line="37" column="17" selection-start-line="37" selection-start-column="17" selection-end-line="37" selection-end-column="17" />
|
||||
<folding>
|
||||
<element signature="e#629#671#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/ranking/templates/ranking.html">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="219">
|
||||
<caret line="48" column="53" selection-start-line="48" selection-start-column="53" selection-end-line="48" selection-end-column="53" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/ranking/urls.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="289">
|
||||
<caret line="18" column="45" selection-start-line="18" selection-start-column="38" selection-end-line="18" selection-end-column="45" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/search/views.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="170">
|
||||
<caret line="10" column="24" selection-start-line="10" selection-start-column="20" selection-end-line="10" selection-end-column="24" />
|
||||
<folding>
|
||||
<element signature="e#0#35#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/search/urls.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="289">
|
||||
<caret line="18" column="20" lean-forward="true" selection-start-line="18" selection-start-column="20" selection-end-line="18" selection-end-column="20" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/user/templates/home.html">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="216">
|
||||
<caret line="47" column="3" selection-start-line="47" selection-start-column="3" selection-end-line="47" selection-end-column="3" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/user/templates/login.html">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="321">
|
||||
<caret line="51" column="43" lean-forward="true" selection-start-line="51" selection-start-column="43" selection-end-line="51" selection-end-column="43" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/user/urls.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="300">
|
||||
<caret line="22" column="38" selection-start-line="22" selection-start-column="38" selection-end-line="22" selection-end-column="38" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$USER_HOME$/.workspace/django_music/lib/python3.6/site-packages/django/core/servers/basehttp.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="156">
|
||||
<caret line="178" selection-start-line="178" selection-end-line="178" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/user/views.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="714">
|
||||
<caret line="52" column="45" selection-start-line="52" selection-start-column="45" selection-end-line="52" selection-end-column="45" />
|
||||
<folding>
|
||||
<element signature="e#0#45#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/comment/templates/comment.html">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="1173">
|
||||
<caret line="69" column="14" selection-start-line="69" selection-start-column="14" selection-end-line="69" selection-end-column="14" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/play/templates/play.html">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="1887">
|
||||
<caret line="111" column="94" selection-start-line="111" selection-start-column="87" selection-end-line="111" selection-end-column="94" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/play/views.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="731">
|
||||
<caret line="47" column="19" selection-start-line="47" selection-start-column="19" selection-end-line="47" selection-end-column="19" />
|
||||
<folding>
|
||||
<element signature="e#0#30#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/play/urls.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="323">
|
||||
<caret line="20" column="23" selection-start-line="20" selection-start-column="23" selection-end-line="20" selection-end-column="23" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/logs/music.log">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="-712">
|
||||
<caret line="1531" lean-forward="true" selection-start-line="1531" selection-end-line="1531" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$USER_HOME$/.workspace/django_music/lib/python3.6/site-packages/django/views/generic/base.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="138">
|
||||
<caret line="96" selection-start-line="96" selection-end-line="96" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/comment/urls.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="297">
|
||||
<caret line="18" lean-forward="true" selection-start-line="18" selection-end-line="18" />
|
||||
<folding>
|
||||
<element signature="e#629#657#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/comment/views.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="136">
|
||||
<caret line="8" lean-forward="true" selection-start-line="8" selection-end-line="8" />
|
||||
<folding>
|
||||
<element signature="e#0#72#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/README.md">
|
||||
<provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]">
|
||||
<state split_layout="SPLIT">
|
||||
<first_editor />
|
||||
<second_editor />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/static/__init__.py">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/static/favicon.ico">
|
||||
<provider selected="true" editor-type-id="images" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/uwsgi.pid">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/uwsgi.ini">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="187">
|
||||
<caret line="11" column="26" lean-forward="true" selection-start-line="11" selection-start-column="26" selection-end-line="11" selection-end-column="26" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</component>
|
||||
</project>
|
||||
Binary file not shown.
@ -1 +0,0 @@
|
||||
"# 泛读报告"
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,3 +0,0 @@
|
||||
from django.contrib import admin
|
||||
|
||||
# Register your models here.
|
||||
@ -1,5 +0,0 @@
|
||||
from django.apps import AppConfig
|
||||
|
||||
|
||||
class CommentConfig(AppConfig):
|
||||
name = 'comment'
|
||||
Binary file not shown.
Binary file not shown.
@ -1,3 +0,0 @@
|
||||
from django.db import models
|
||||
|
||||
# Create your models here.
|
||||
@ -1,124 +0,0 @@
|
||||
{% extends "title_base.html" %}
|
||||
{% load staticfiles %}
|
||||
|
||||
{% block header_extends %}
|
||||
<link type="image/x-icon" rel="shortcut icon" href="{% static 'favicon.ico' %}">
|
||||
<link type="text/css" rel="stylesheet" href="{% static 'css/common.css' %}">
|
||||
<link type="text/css" rel="stylesheet" href="{% static 'css/comment.css' %}">
|
||||
{% endblock %}
|
||||
{% block content %}
|
||||
<body class="review">
|
||||
<div class="header">
|
||||
<a href="/" class="logo" title="首页"><img alt="易点音乐" src="{% static 'image/logo.png' %}"></a>
|
||||
<div class="search-box">
|
||||
<form id="searchForm" action="{% url 'search' 1 %}" method="post" target="_blank">
|
||||
{% csrf_token %}
|
||||
<div class="search-keyword">
|
||||
<input id="kword" name="kword" type="text" class="keyword" maxlength="120" placeholder="音乐节" />
|
||||
</div>
|
||||
<input id="subSerch" type="submit" class="search-button" value="搜 索" />
|
||||
</form>
|
||||
<div id="suggest" class="search-suggest"></div>
|
||||
<div class="search-hot-words">
|
||||
{% for song in search_song %}
|
||||
<a target="play" href="{% url 'play' song.song.song_id %}" >{{ song.song.song_name }}</a>
|
||||
{% endfor %}
|
||||
</div>
|
||||
</div>
|
||||
</div><!--end header-->
|
||||
<div class="nav-box">
|
||||
<div class="nav-box-inner">
|
||||
<ul class="nav clearfix">
|
||||
<li><a href="/">首页</a></li>
|
||||
<li><a href="{% url 'ranking' %}" target="_blank">歌曲排行</a></li>
|
||||
<li><a href="{% url 'home' 1 %}" target="_blank">用户中心</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div><!--end nav-box-->
|
||||
<div class="wrapper">
|
||||
<div class="breadcrumb">
|
||||
<a href="/">首页</a> >
|
||||
<a href="{% url 'play' song_id %}" target="_self">{{song_name}}</a> >
|
||||
<span>点评</span>
|
||||
</div>
|
||||
<div class="page-title" id="currentSong"></div>
|
||||
</div>
|
||||
<div class="wrapper">
|
||||
<div class="section">
|
||||
<div class="section-header"><h3 class="section-title">网友点评</h3></div>
|
||||
<div class="section-content comments-score-new review-comments-score clearfix">
|
||||
<div class="clearfix">
|
||||
|
||||
<!--点评框-->
|
||||
<div class="comments-box">
|
||||
<div class="comments-box-title">我要点评<<{{ song_name }}>></div>
|
||||
<div class="comments-default-score clearfix"></div>
|
||||
<form action="" method="post" id="usrform">
|
||||
{% csrf_token %}
|
||||
<div class="writebox">
|
||||
<textarea name="comment" form="usrform"></textarea>
|
||||
</div>
|
||||
<div class="comments-box-button clearfix">
|
||||
<input type="submit" value="发布" class="_j_cc_post_entry cc-post-entry" id="scoreBtn">
|
||||
<div data-role="user-login" class="_j_cc_post_login"></div>
|
||||
</div>
|
||||
<div id="scoreTips2" style="padding-top:10px;"></div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="wrapper clearfix">
|
||||
<div class="content">
|
||||
<div id="J_CommentList">
|
||||
<ul class="comment-list">
|
||||
{% for item in contacts.object_list %}
|
||||
<li class="comment-item ">
|
||||
<div class="comments-user">
|
||||
<span class="face">
|
||||
<img src="{% static 'image/user.jpg' %}" width="60" height="60">
|
||||
</span>
|
||||
</div>
|
||||
<div class="comments-list-content">
|
||||
<div class="single-score clearfix">
|
||||
<span class="date">{{ item.comment_date }}</span>
|
||||
<div><span class="score">{{ item.comment_user }}</span></div>
|
||||
</div>
|
||||
<!--comments-content-->
|
||||
<div class="comments-content">
|
||||
<div class="J_CommentContent comment-height-limit">
|
||||
<div class="content-inner">
|
||||
<div class="comments-words">
|
||||
<p>{{ item.comment_text }}</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
<div class="page-box">
|
||||
<div class="pagebar" id="pageBar">
|
||||
{% if contacts.has_previous %}
|
||||
<a href="{% url 'comment' song_id %}?page={{ contacts.previous_page_number }}" class="prev" target="_self"><i></i>上一页</a>
|
||||
{% endif %}
|
||||
{% for page in contacts.paginator.page_range %}
|
||||
{% if contacts.number == page %}
|
||||
<span class="sel">{{ page }}</span>
|
||||
{% else %}
|
||||
<a href="{% url 'comment' song_id %}?page={{ page }}" target="_self">{{ page }}</a>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
{% if contacts.has_next %}
|
||||
<a href="{% url 'comment' song_id %}?page={{ contacts.next_page_number }}" class="next" target="_self">下一页<i></i></a>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
@ -1,3 +0,0 @@
|
||||
from django.test import TestCase
|
||||
|
||||
# Create your tests here.
|
||||
@ -1,22 +0,0 @@
|
||||
"""music URL Configuration
|
||||
|
||||
The `urlpatterns` list routes URLs to views. For more information please see:
|
||||
https://docs.djangoproject.com/en/2.0/topics/http/urls/
|
||||
Examples:
|
||||
Function views
|
||||
1. Add an import: from my_app import views
|
||||
2. Add a URL to urlpatterns: path('', views.home, name='home')
|
||||
Class-based views
|
||||
1. Add an import: from other_app.views import Home
|
||||
2. Add a URL to urlpatterns: path('', Home.as_view(), name='home')
|
||||
Including another URLconf
|
||||
1. Import the include() function: from django.urls import include, path
|
||||
2. Add a URL to urlpatterns: path('blog/', include('blog.urls'))
|
||||
"""
|
||||
from django.urls import path
|
||||
|
||||
from comment.views import CommentView
|
||||
|
||||
urlpatterns = [
|
||||
path('<int:song_id>', CommentView.as_view(), name='comment'),
|
||||
]
|
||||
@ -1,41 +0,0 @@
|
||||
from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger
|
||||
from django.shortcuts import render, redirect
|
||||
from django.http import Http404
|
||||
from django.views import View
|
||||
|
||||
from index.models import *
|
||||
import time
|
||||
|
||||
|
||||
class CommentView(View):
|
||||
def post(self, request, song_id):
|
||||
# 点评提交处理
|
||||
comment_text = request.POST.get('comment', '')
|
||||
comment_user = request.user.username if request.user.username else '匿名用户'
|
||||
if comment_text:
|
||||
comment = Comment()
|
||||
comment.comment_text = comment_text
|
||||
comment.comment_user = comment_user
|
||||
comment.comment_date = time.strftime('%Y-%m-%d', time.localtime(time.time()))
|
||||
comment.song_id = song_id
|
||||
comment.save()
|
||||
return redirect('/comment/%s' % song_id)
|
||||
|
||||
def get(self, request, song_id):
|
||||
# 热搜歌曲
|
||||
search_song = Dynamic.objects.select_related('song').order_by('-dynamic_search').all()[:6]
|
||||
song_info = Song.objects.filter(song_id=song_id).first()
|
||||
# 歌曲不存在抛出404异常
|
||||
if not song_info:
|
||||
raise Http404
|
||||
comment_all = Comment.objects.filter(song_id=song_id).order_by('comment_date')
|
||||
song_name = song_info.song_name
|
||||
page = int(request.GET.get('page', 1))
|
||||
paginator = Paginator(comment_all, 2)
|
||||
try:
|
||||
contacts = paginator.page(page)
|
||||
except PageNotAnInteger:
|
||||
contacts = paginator.page(1)
|
||||
except EmptyPage:
|
||||
contacts = paginator.page(paginator.num_pages)
|
||||
return render(request, 'comment.html', locals())
|
||||
Binary file not shown.
Binary file not shown.
@ -1,16 +0,0 @@
|
||||
from django.apps import AppConfig
|
||||
import os
|
||||
import pymysql
|
||||
pymysql.install_as_MySQLdb()
|
||||
# 修改app在Admin后台显示名称
|
||||
# default_app_config的值来自apps.py的类名
|
||||
default_app_config = 'index.IndexConfig'
|
||||
|
||||
# 获取当前app的命名
|
||||
def get_current_app_name(_file):
|
||||
return os.path.split(os.path.dirname(_file))[-1]
|
||||
|
||||
# 重写类IndexConfig
|
||||
class IndexConfig(AppConfig):
|
||||
name = get_current_app_name(__file__)
|
||||
verbose_name = '网站首页'
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,5 +0,0 @@
|
||||
from django.apps import AppConfig
|
||||
|
||||
|
||||
class IndexConfig(AppConfig):
|
||||
name = 'index'
|
||||
@ -1,75 +0,0 @@
|
||||
# Generated by Django 2.2.5 on 2019-09-11 07:37
|
||||
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
initial = True
|
||||
|
||||
dependencies = [
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name='Label',
|
||||
fields=[
|
||||
('label_id', models.AutoField(primary_key=True, serialize=False, verbose_name='序号')),
|
||||
('label_name', models.CharField(max_length=10, verbose_name='分类标签')),
|
||||
],
|
||||
options={
|
||||
'verbose_name': '歌曲分类',
|
||||
'verbose_name_plural': '歌曲分类',
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='Song',
|
||||
fields=[
|
||||
('song_id', models.AutoField(primary_key=True, serialize=False, verbose_name='序号')),
|
||||
('song_name', models.CharField(max_length=50, verbose_name='歌名')),
|
||||
('song_singer', models.CharField(max_length=50, verbose_name='歌手')),
|
||||
('song_time', models.CharField(max_length=10, verbose_name='时长')),
|
||||
('song_album', models.CharField(max_length=100, verbose_name='专辑')),
|
||||
('song_languages', models.CharField(max_length=20, verbose_name='语种')),
|
||||
('song_company', models.CharField(max_length=50, verbose_name='唱片公司')),
|
||||
('song_release', models.CharField(max_length=20, verbose_name='发行时间')),
|
||||
('song_img', models.CharField(max_length=20, verbose_name='歌曲图片')),
|
||||
('song_lyrics', models.CharField(default='暂无歌词', max_length=50, verbose_name='歌词')),
|
||||
('song_file', models.CharField(max_length=50, verbose_name='歌曲文件')),
|
||||
('label', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='index.Label', verbose_name='歌名分类')),
|
||||
],
|
||||
options={
|
||||
'verbose_name': '歌曲信息',
|
||||
'verbose_name_plural': '歌曲信息',
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='Dynamic',
|
||||
fields=[
|
||||
('dynamic_id', models.AutoField(primary_key=True, serialize=False, verbose_name='序号')),
|
||||
('dynamic_plays', models.IntegerField(verbose_name='播放次数')),
|
||||
('dynamic_search', models.IntegerField(verbose_name='搜索次数')),
|
||||
('dynamic_down', models.IntegerField(verbose_name='下载次数')),
|
||||
('song', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='index.Song', verbose_name='歌名')),
|
||||
],
|
||||
options={
|
||||
'verbose_name': '歌曲动态',
|
||||
'verbose_name_plural': '歌曲动态',
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='Comment',
|
||||
fields=[
|
||||
('comment_id', models.AutoField(primary_key=True, serialize=False, verbose_name='序号')),
|
||||
('comment_text', models.CharField(max_length=500, verbose_name='内容')),
|
||||
('comment_user', models.CharField(max_length=20, verbose_name='用户')),
|
||||
('comment_date', models.CharField(max_length=50, verbose_name='日期')),
|
||||
('song', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='index.Song', verbose_name='歌名')),
|
||||
],
|
||||
options={
|
||||
'verbose_name': '歌曲评论',
|
||||
'verbose_name_plural': '歌曲评论',
|
||||
},
|
||||
),
|
||||
]
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,68 +0,0 @@
|
||||
from django.db import models
|
||||
|
||||
|
||||
# 歌曲分类表label
|
||||
class Label(models.Model):
|
||||
label_id = models.AutoField('序号', primary_key=True)
|
||||
label_name = models.CharField('分类标签', max_length=10)
|
||||
|
||||
def __str__(self):
|
||||
return self.label_name
|
||||
|
||||
class Meta:
|
||||
# 设置Admin界面的显示内容
|
||||
verbose_name = '歌曲分类'
|
||||
verbose_name_plural = '歌曲分类'
|
||||
|
||||
|
||||
# 歌曲信息表song
|
||||
class Song(models.Model):
|
||||
song_id = models.AutoField('序号', primary_key=True)
|
||||
song_name = models.CharField('歌名', max_length=50)
|
||||
song_singer = models.CharField('歌手', max_length=50)
|
||||
song_time = models.CharField('时长', max_length=10)
|
||||
song_album = models.CharField('专辑', max_length=100)
|
||||
song_languages = models.CharField('语种', max_length=20)
|
||||
song_company = models.CharField('唱片公司', max_length=50)
|
||||
song_release = models.CharField('发行时间', max_length=20)
|
||||
song_img = models.CharField('歌曲图片', max_length=20)
|
||||
song_lyrics = models.CharField('歌词', max_length=50, default='暂无歌词')
|
||||
song_file = models.CharField('歌曲文件', max_length=50)
|
||||
label = models.ForeignKey(Label, on_delete=models.CASCADE, verbose_name='歌名分类')
|
||||
|
||||
def __str__(self):
|
||||
return self.song_name
|
||||
|
||||
class Meta:
|
||||
# 设置Admin界面的显示内容
|
||||
verbose_name = '歌曲信息'
|
||||
verbose_name_plural = '歌曲信息'
|
||||
|
||||
|
||||
# 歌曲动态表dynamic
|
||||
class Dynamic(models.Model):
|
||||
dynamic_id = models.AutoField('序号', primary_key=True)
|
||||
song = models.ForeignKey(Song, on_delete=models.CASCADE, verbose_name='歌名')
|
||||
dynamic_plays = models.IntegerField('播放次数')
|
||||
dynamic_search = models.IntegerField('搜索次数')
|
||||
dynamic_down = models.IntegerField('下载次数')
|
||||
|
||||
class Meta:
|
||||
# 设置Admin界面的显示内容
|
||||
verbose_name = '歌曲动态'
|
||||
verbose_name_plural = '歌曲动态'
|
||||
|
||||
|
||||
# 歌曲点评表comment
|
||||
class Comment(models.Model):
|
||||
comment_id = models.AutoField('序号', primary_key=True)
|
||||
comment_text = models.CharField('内容', max_length=500)
|
||||
comment_user = models.CharField('用户', max_length=20)
|
||||
song = models.ForeignKey(Song, on_delete=models.CASCADE, verbose_name='歌名')
|
||||
comment_date = models.CharField('日期', max_length=50)
|
||||
|
||||
class Meta:
|
||||
# 设置Admin界面的显示内容
|
||||
verbose_name = '歌曲评论'
|
||||
verbose_name_plural = '歌曲评论'
|
||||
# Create your models here.
|
||||
@ -1,3 +0,0 @@
|
||||
from django.test import TestCase
|
||||
|
||||
# Create your tests here.
|
||||
@ -1,24 +0,0 @@
|
||||
from django.shortcuts import render
|
||||
from .models import *
|
||||
|
||||
|
||||
def IndexView(request):
|
||||
# 热搜歌曲
|
||||
search_song = Dynamic.objects.select_related('song').order_by('-dynamic_search').all()[:8]
|
||||
# 音乐分类
|
||||
label_list = Label.objects.all()
|
||||
# 热门歌曲
|
||||
play_hot_song = Dynamic.objects.select_related('song').order_by('-dynamic_plays').all()[:10]
|
||||
# 新歌推荐
|
||||
daily_recommendation = Song.objects.order_by('-song_release').all()[:3]
|
||||
# 热门搜索、热门下载
|
||||
search_ranking = search_song[:6]
|
||||
down_ranking = Dynamic.objects.select_related('song').order_by('-dynamic_down').all()[:6]
|
||||
all_ranking = [search_ranking, down_ranking]
|
||||
return render(request, 'index.html', locals())
|
||||
|
||||
|
||||
# 自定义404和500的错误页面
|
||||
def page_not_found(request):
|
||||
return render(request, 'error404.html', status=404)
|
||||
# Create your views here.
|
||||
File diff suppressed because it is too large
Load Diff
@ -1,21 +0,0 @@
|
||||
#!/usr/bin/env python
|
||||
"""Django's command-line utility for administrative tasks."""
|
||||
import os
|
||||
import sys
|
||||
|
||||
|
||||
def main():
|
||||
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'music.settings')
|
||||
try:
|
||||
from django.core.management import execute_from_command_line
|
||||
except ImportError as exc:
|
||||
raise ImportError(
|
||||
"Couldn't import Django. Are you sure it's installed and "
|
||||
"available on your PYTHONPATH environment variable? Did you "
|
||||
"forget to activate a virtual environment?"
|
||||
) from exc
|
||||
execute_from_command_line(sys.argv)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
||||
@ -1,2 +0,0 @@
|
||||
import pymysql
|
||||
pymysql.install_as_MySQLdb()
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,170 +0,0 @@
|
||||
"""
|
||||
Django settings for music project.
|
||||
|
||||
Generated by 'django-admin startproject' using Django 2.2.5.
|
||||
"""
|
||||
|
||||
import os
|
||||
|
||||
# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
|
||||
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
|
||||
|
||||
# Quick-start development settings - unsuitable for production
|
||||
# See https://docs.djangoproject.com/en/2.2/howto/deployment/checklist/
|
||||
|
||||
# SECURITY WARNING: keep the secret key used in production secret!
|
||||
SECRET_KEY = 'hv(uoh%o6ll4=7&%h3(7u-%57wniu2&8937j_cf#nm!zw9+%@1'
|
||||
|
||||
# SECURITY WARNING: don't run with debug turned on in production!
|
||||
DEBUG = True
|
||||
|
||||
# Application definition
|
||||
INSTALLED_APPS = [
|
||||
'django.contrib.admin',
|
||||
'django.contrib.auth',
|
||||
'django.contrib.contenttypes',
|
||||
'django.contrib.sessions',
|
||||
'django.contrib.messages',
|
||||
'django.contrib.staticfiles',
|
||||
'index',
|
||||
'ranking',
|
||||
'user',
|
||||
'play',
|
||||
'search',
|
||||
'comment',
|
||||
]
|
||||
|
||||
# 中间件
|
||||
MIDDLEWARE = [
|
||||
'django.middleware.security.SecurityMiddleware',
|
||||
'django.contrib.sessions.middleware.SessionMiddleware',
|
||||
'django.middleware.locale.LocaleMiddleware',
|
||||
'django.middleware.common.CommonMiddleware',
|
||||
'django.middleware.csrf.CsrfViewMiddleware',
|
||||
'django.contrib.auth.middleware.AuthenticationMiddleware',
|
||||
'django.contrib.messages.middleware.MessageMiddleware',
|
||||
'django.middleware.clickjacking.XFrameOptionsMiddleware',
|
||||
]
|
||||
|
||||
ROOT_URLCONF = 'music.urls'
|
||||
|
||||
# 设置模板路径
|
||||
TEMPLATES = [
|
||||
{
|
||||
'BACKEND': 'django.template.backends.django.DjangoTemplates',
|
||||
'DIRS': [os.path.join(BASE_DIR, 'templates'),
|
||||
os.path.join(BASE_DIR, 'index/templates'),
|
||||
os.path.join(BASE_DIR, 'ranking/templates'),
|
||||
os.path.join(BASE_DIR, 'user/templates'),
|
||||
os.path.join(BASE_DIR, 'play/templates'),
|
||||
os.path.join(BASE_DIR, 'comment/templates'),
|
||||
os.path.join(BASE_DIR, 'search/templates')],
|
||||
'APP_DIRS': True,
|
||||
'OPTIONS': {
|
||||
'context_processors': [
|
||||
'django.template.context_processors.debug',
|
||||
'django.template.context_processors.request',
|
||||
'django.contrib.auth.context_processors.auth',
|
||||
'django.contrib.messages.context_processors.messages',
|
||||
],
|
||||
},
|
||||
},
|
||||
]
|
||||
|
||||
WSGI_APPLICATION = 'music.wsgi.application'
|
||||
|
||||
# Database - 使用SQLite
|
||||
DATABASES = {
|
||||
'default': {
|
||||
'ENGINE': 'django.db.backends.sqlite3',
|
||||
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
|
||||
}
|
||||
}
|
||||
|
||||
# 临时注释掉自定义用户模型
|
||||
# AUTH_USER_MODEL = 'user.MyUser'
|
||||
|
||||
# 其他配置保持不变...
|
||||
|
||||
# Password validation
|
||||
# https://docs.djangoproject.com/en/2.2/ref/settings/#auth-password-validators
|
||||
|
||||
AUTH_PASSWORD_VALIDATORS = [
|
||||
{
|
||||
'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',
|
||||
},
|
||||
{
|
||||
'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator',
|
||||
},
|
||||
{
|
||||
'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator',
|
||||
},
|
||||
{
|
||||
'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator',
|
||||
},
|
||||
]
|
||||
|
||||
LOGGING = {
|
||||
'version': 1,
|
||||
'disable_existing_loggers': False, # 是否禁用已经存在的日志器
|
||||
'formatters': { # 日志信息显示的格式
|
||||
'verbose': {
|
||||
'format': '%(levelname)s %(asctime)s %(module)s %(lineno)d %(message)s'
|
||||
},
|
||||
'simple': {
|
||||
'format': '%(levelname)s %(module)s %(lineno)d %(message)s'
|
||||
},
|
||||
},
|
||||
'filters': { # 对日志进行过滤
|
||||
'require_debug_true': { # django在debug模式下才输出日志
|
||||
'()': 'django.utils.log.RequireDebugTrue',
|
||||
},
|
||||
},
|
||||
'handlers': { # 日志处理方法
|
||||
'console': { # 向终端中输出日志
|
||||
'level': 'INFO',
|
||||
'filters': ['require_debug_true'],
|
||||
'class': 'logging.StreamHandler',
|
||||
'formatter': 'simple'
|
||||
},
|
||||
'file': { # 向文件中输出日志
|
||||
'level': 'INFO',
|
||||
'class': 'logging.handlers.RotatingFileHandler',
|
||||
'filename': os.path.join(BASE_DIR, 'logs/music.log'), # 日志文件的位置
|
||||
'maxBytes': 300 * 1024 * 1024,
|
||||
'backupCount': 10,
|
||||
'formatter': 'verbose'
|
||||
},
|
||||
},
|
||||
'loggers': { # 日志器
|
||||
'django': { # 定义了一个名为django的日志器
|
||||
'handlers': ['console', 'file'], # 可以同时向终端与文件中输出日志
|
||||
'propagate': True, # 是否继续传递日志信息
|
||||
'level': 'INFO', # 日志器接收的最低日志级别
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
# Internationalization
|
||||
# https://docs.djangoproject.com/en/2.2/topics/i18n/
|
||||
|
||||
LANGUAGE_CODE = 'zh-Hans'
|
||||
|
||||
TIME_ZONE = 'UTC'
|
||||
|
||||
USE_I18N = True
|
||||
|
||||
USE_L10N = True
|
||||
|
||||
USE_TZ = True
|
||||
|
||||
# Static files (CSS, JavaScript, Images)
|
||||
# https://docs.djangoproject.com/en/2.2/howto/static-files/
|
||||
AUTH_USER_MODEL = 'user.MyUser'
|
||||
# Static files (CSS, JavaScript, Images)
|
||||
STATIC_URL = '/static/'
|
||||
STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles') # 收集静态文件目录
|
||||
|
||||
STATICFILES_DIRS = [
|
||||
os.path.join(BASE_DIR, 'static'), # 你的静态文件目录
|
||||
]
|
||||
@ -1,16 +0,0 @@
|
||||
"""
|
||||
WSGI config for music project.
|
||||
|
||||
It exposes the WSGI callable as a module-level variable named ``application``.
|
||||
|
||||
For more information on this file, see
|
||||
https://docs.djangoproject.com/en/2.2/howto/deployment/wsgi/
|
||||
"""
|
||||
|
||||
import os
|
||||
|
||||
from django.core.wsgi import get_wsgi_application
|
||||
|
||||
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'music.settings')
|
||||
|
||||
application = get_wsgi_application()
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue