Giter Site home page Giter Site logo

phith0n / mooder Goto Github PK

View Code? Open in Web Editor NEW
749.0 36.0 260.0 779 KB

Mooder是一款开源、安全、简洁、强大的团队内部知识分享平台。

License: GNU Lesser General Public License v3.0

Python 47.79% CSS 8.25% JavaScript 0.64% HTML 36.39% Shell 0.11% Dockerfile 0.14% Less 6.68%

mooder's Introduction

Mooder团队贡献系统

Mooder是一款开源、安全、简洁、强大的(安全)团队贡献平台,基于Django、全封闭保证私密性、支持Markdown、支持Postgres/Mysql/Sqlite等多种数据库、支持Docker-compose一键化安装与更新,易于二次开发。

开发缓慢,文档下线,只建议对Django有开发经验的同学使用。

为什么会有Mooder

做Mooder的初衷是为了团队内部的交流。由于众所周知的原因,国内大量社区关闭,安全技术知识的学习变得愈加困难,更多的团队将交流方式变为QQ群、微信群。 而QQ、微信等及时通信工具并不是一个交流技术的好地方,团队仍然需要一个内部社区。于是,Mooder应运而生。

Mooder从设计之初想法就是“封闭”,也就是说该社区严格控制内部隐私,仅拥有邀请码的用户可以登录社区,管理员在后台也能够踢出、删除一个用户,保证了社区的私密性。

另外,Mooder的核心理念的“贡献”。团队成员可以将自己挖掘的通用漏洞、编写的EXP、提交到其他SRC的漏洞详情、众测中挖到的漏洞等等作为一个“贡献”提交到Mooder中,然后由管理员进行审核并给予rank与积分。通过该“积分”,团队成员也可以购买其他成员提交的贡献,或者去礼品中心换取礼品等。

通过这样的“知识交换”,让团队能够更快地成长。

Change Log

  • 2021.08.08
    • 升级Django版本到3.x,修复了一堆Bug
  • 2016.11.01
    • 由于Mailgun十分不稳定,将默认邮件发送方式替换为SMTP,配置方法见文档,升级不影响已经配置好Mailgun的站点运行
  • 2016.11.02
    • 修复后台部分用户有权限却无法访问某些资源的BUG
    • 修复https下访问不到部分js的BUG
    • 隐藏附件真实文件名,改为使用数据库中储存的文件名

开源协议

使用Mooder请遵守LGPL协议。

mooder's People

Contributors

deamwork avatar phith0n avatar zjuchenyuan 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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

mooder's Issues

用户注册后返回401

本地,源代码搭建的环境。
审核员生成邀请码,用户注册时返回错误<Response [401]>。
审核员界面已经能看到该用户,未启用,点击启用后弹出一个新的about:blank空页面。
无法启用该用户。
注册邮箱是乱填的[email protected]
发送邮件未配置。

貌似。。。依赖错误?

hook@ubuntu:/mooder$ python3 ./manage.py migrate
Traceback (most recent call last):
File "./manage.py", line 22, in
execute_from_command_line(sys.argv)
File "/home/hook/.local/lib/python3.5/site-packages/django/core/management/init.py", line 367, in execute_from_command_line
utility.execute()
File "/home/hook/.local/lib/python3.5/site-packages/django/core/management/init.py", line 341, in execute
django.setup()
File "/home/hook/.local/lib/python3.5/site-packages/django/init.py", line 27, in setup
apps.populate(settings.INSTALLED_APPS)
File "/home/hook/.local/lib/python3.5/site-packages/django/apps/registry.py", line 85, in populate
app_config = AppConfig.create(entry)
File "/home/hook/.local/lib/python3.5/site-packages/django/apps/config.py", line 90, in create
module = import_module(entry)
File "/usr/lib/python3.5/importlib/init.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "", line 986, in _gcd_import
File "", line 969, in _find_and_load
File "", line 956, in _find_and_load_unlocked
ImportError: No module named 'registration'
hook@ubuntu:
/mooder$

Project dependencies may have API risk issues

Hi, In mooder, inappropriate dependency versioning constraints can cause risks.

Below are the dependencies and version constraints that the project is using

-ihttps://pypi.tuna.tsinghua.edu.cn/simple
django
markdown
django-markup
django-pure-pagination
django-simple-captcha
django-bootstrap3
django-registration-redux
django-anymail[mailgun]
pytz
psycopg2-binary
python-dotenv
gunicorn
gevent

The version constraint == will introduce the risk of dependency conflicts because the scope of dependencies is too strict.
The version constraint No Upper Bound and * will introduce the risk of the missing API Error because the latest version of the dependencies may remove some APIs.

After further analysis, in this project,
The version constraint of dependency django-simple-captcha can be changed to >=0.3.3,<=0.3.7.
The version constraint of dependency django-simple-captcha can be changed to >=0.5.4,<=0.5.17.

The above modification suggestions can reduce the dependency conflicts as much as possible,
and introduce the latest version as much as possible without calling Error in the projects.

The invocation of the current project includes all the following methods.

The calling methods from the django-simple-captcha
captcha.fields.CaptchaField
The calling methods from the all methods
views.OrderCreateView.as_view
views.PostListView.as_view
archives.models.Post.posts.values
django.http.response.HttpResponseRedirect
django.db.models.TextField
self.JavascriptView.super.dispatch
django.db.migrations.AlterModelOptions
self._get_style
self.FrontPostManager.super.get_queryset.filter
django.db.migrations.AlterField
django.db.models.Count.Post.posts.values.annotate.values
django.forms.HiddenInput
self.normalize_email
views.GiftDetailView.as_view
User.objects.order_by
html.replace.replace
django.db.migrations.CreateModel
list
views.LinkAddView.as_view
self.ProfileView.super.dispatch
format
os.environ.setdefault
self.get_object
s.get_decoded.get
views.LinkDeleteView.as_view
User.objects.values
context.user.has_perm
self._get_style.get
views.CoinLogView.as_view
django.forms.Textarea
archives.models.Comment.objects.all
accounts.models.Invitecode.objects.filter
mooder.extends.purifier.XssHtml.getHtml
os.path.dirname
models.Post.posts.all
self.node_default
django.utils.html.conditional_escape
django.db.models.PositiveIntegerField
self.get_queryset
views.ArchiveDetailView.as_view
views.GiftLogListView.as_view
urllib.parse.urlparse
django.db.models.ImageField
django.core.validators.MinValueValidator
django.db.models.functions.TruncDay.dweek.Post.posts.filter.annotate.values
queryset.update
django.forms.IntegerField
User.objects.get
archives.models.GiftLog.objects.filter
django.db.models.Count
django.contrib.auth.views.PasswordResetDoneView.as_view
archives.models.Post.posts.count
django.contrib.admin.register
django.utils.timezone.now
django.db.models.EmailField
views.GiftLogWaitListView.as_view
User.objects.create_superuser
views.VerifyPostListView.as_view
django.http.JsonResponse
django.conf.urls.static.static
views.BanUserView.as_view
views.GiftDeleteView.as_view
User.objects.all
post.author.save
CoinLog.save
self.get_success_url
django.db.models.Count.User.objects.values.annotate.values
forms.CommentForm
django.template.Library.filter
django.forms.RegexField
django.forms.CharField
os.path.join
self.SignupForm.super.save
django.db.models.URLField
views.ArchiveView.as_view
html.replace.replace.replace
views.UserView.as_view
self.FrontPostManager.super.get_queryset
archives.models.Post.posts.filter
self.request.META.get
django.db.models.Count.Post.posts.values.annotate.values.order_by
form.save.save
self.start.pop
self.IndexView.super.get_context_data
self._get_style.items
django.urls.reverse_lazy
accounts.models.Invitecode
registration.backends.default.views.ResendActivationView.as_view
django.utils.crypto.get_random_string
abs
request.META.get
self.result.append
token.split_contents
django.views.generic.TemplateView.as_view
django.db.models.AutoField
name.isalpha
django.db.migrations.RemoveField
self.get_context_data
errors.get
self.ProfileDetailView.super.get_context_data
django.contrib.sessions.models.Session.objects.all
django.db.models.functions.TruncDay
print
django.contrib.auth.views.PasswordResetConfirmView.as_view
s.delete
self._htmlspecialchars
super
self._wash_attr
self._get_style.startswith
accounts.models.Invitecode.save
User.objects.filter
self._common_attr
user.has_perm
managements.models.CoinLog.objects.filter
self.tags_own_attrs.get
request.user.save
django.db.migrations.AddField
self.AdminPermissionMixin.super.dispatch
django.core.validators.MaxValueValidator
self.handle_no_permission
models.Post.posts.filter
re.compile.match
views.VerifyView.as_view
views.DeleteCommentView.as_view
django.db.models.functions.TruncDay.dweek.Post.posts.filter.annotate.values.annotate
os.path.splitext
registration.backends.default.views.RegistrationView.as_view
models.GiftLog.objects.filter
views.UploadImageView.as_view
XssHtml
datetime.timedelta
tag.self.getattr
django.shortcuts.get_object_or_404
views.JavascriptView.as_view
django.contrib.auth.views.LoginView.as_view
django.db.models.Manager
self.get_queryset.filter
PermNode
hashlib.md5
django.shortcuts.reverse
self.CoinLogView.super.get_context_data
django.templatetags.static.static
self.create_user.save
django.db.models.F
self.create_user
mooder.extends.purifier.XssHtml.feed
self.request.user.save
self.cleaned_data.models.Invitecode.objects.filter.exists
post.buyers.filter
views.IgnoreView.as_view
django.core.wsgi.get_wsgi_application
archives.models.Post.posts.all
archives.models.GiftLog.objects.filter.count
ActivationView.as_view
views.GiftEditView.as_view
views.LinkListView.as_view
django.db.models.Count.User.objects.values.annotate.values.order_by
forms.CommentForm.is_valid
models.Invitecode.objects.get.save
views.LinkEditView.as_view
self.CommentForm.super.__init__
django.db.models.Count.TruncDay.dweek.Post.posts.filter.annotate.values.annotate.values
views.InviteCodeListView.as_view
mooder.extends.purifier.XssHtml
self.nodelist.render
tuple
form.save
XssHtml.getHtml
self._true_url
django.shortcuts.get_object_or_404.save
django.db.models.BooleanField
urllib.parse.urlencode
self.node_default.items
str
post.buyers.add
django.db.models.Count.TruncDay.dweek.Post.posts.filter.annotate.values.annotate.values.order_by
managements.models.log_coin
dotenv.load_dotenv
dict.get
django.contrib.auth.views.PasswordChangeDoneView.as_view
name.isdigit
ext.lower.lower
views.ArchiveBuyView.as_view
self._response_403_template
models.Invitecode.objects.get
views.GiftListView.as_view
forms.PostImageForm
hasattr
django.urls.path
self.data.append
query.filter.filter
re.sub
request.get_full_path
FrontPostManager
django.shortcuts.redirect
self.email.lower.encode
captcha.fields.CaptchaField
django.db.models.IntegerField
self.email.lower.encode.hashlib.md5.hexdigest
views.OrderDetailView.as_view
parser.delete_first_token
join
self.handle_starttag
re.compile
request.user.id.post.buyers.filter.exists
queryset.get.save
views.HideView.as_view
self.create_user.set_password
django.contrib.auth.views.PasswordResetView.as_view
archives.models.Gift.objects.filter
django.contrib.admin.site.register
self.email.lower
self.kwargs.get
self._limit_attr
models.CoinLog.objects.filter
range
errors.as_text
os.path.abspath
analysis_count.get
archives.models.Post.posts.values.annotate
self.model
self._get_user_chart
wsgiref.util.FileWrapper
django.shortcuts.render
dweek.Post.posts.filter.annotate
django.db.models.Q
django.dispatch.receiver
models.Gift.objects.filter
parser.parse
uuid.uuid4
self.kwargs.setdefault
s.get_decoded
request.user.has_perm
self.request.POST.get
views.ProfileDetailView.as_view
views.UserDetailView.as_view
views.IndexView.as_view
User.objects.count
errors.tuple.errors.get.as_text
views.DeleteInviteCodeView.as_view
self.render_to_response
views.ProfileView.as_view
views.GenerateInvitecodeView.as_view
views.EditPostView.as_view
MyUserManager
datetime.datetime.now
user.id.post.buyers.filter.exists
self.request.user.has_perm
self.cleaned_data.get
getattr
self.object.author.save
self.request.GET.get
views.AttachmentView.as_view
models.log_coin
django.db.models.DateTimeField
self.ArchiveDetailView.super.get_context_data
django.template.Library
django.utils.timezone.get_current_timezone
django.db.models.CharField
XssHtml.close
views.ProfileOrderView.as_view
ImportError
django.template.defaultfilters.date
self._get_style.append
User.objects.filter.exists
views.GiftAddView.as_view
open
archives.models.Post.posts.filter.count
forms.CommentForm.save
self.object.save
dict
self.object.user.save
django.core.management.execute_from_command_line
django.http.StreamingHttpResponse
django.db.migrations.DeleteModel
enumerate
django.db.models.ManyToManyField
html.replace
django.contrib.auth.views.PasswordResetCompleteView.as_view
views.ProfileEditView.as_view
views.CoinView.as_view
os.path.basename
django.db.models.FileField
self._true_style
models.Invitecode.objects.filter
self.PostForm.super.__init__
User.objects.values.annotate
django.db.migrations.swappable_dependency
self.has_permission
XssHtml.feed
urllib.parse.quote
self._get_post_chart
self.start.append
self._set_attr_default
django.utils.timezone.now.today
zip
django.db.models.OneToOneField
self.form_invalid
views.CreateArchiveView.as_view
form.add_error
Comment.objects.get
django.utils.safestring.mark_safe
limit.items
mooder.extends.purifier.XssHtml.close
django.core.exceptions.ValidationError
views.GiftLogDetailView.as_view
os.path.exists
HTMLParser.HTMLParser.__init__
html.replace.replace.replace.replace
os.environ.get
self.ProfileView.super.get_context_data
l.strftime
CoinLog
archives.models.Link.objects.all
request.build_absolute_uri
ret.append
django.template.Library.simple_tag
self.ProfileForm.super.__init__
archives.models.GiftLog.objects.all
self._get_link
django.forms.ValidationError
views.ProfilePostView.as_view
archives.models.Comment.objects.all.get
url.startswith
django.db.models.ForeignKey
django.contrib.auth.get_user_model
self.OrderCreateView.super.get_context_data
django.contrib.auth.validators.UnicodeUsernameValidator
f.read
os.environ.get.lower
ValueError
django.urls.include
len
django.forms.FileInput
self._get_analysis_chart
django.contrib.auth.views.PasswordChangeView.as_view

@developer
Could please help me check this issue?
May I pull a request to fix it?
Thank you very much.

CentOS 6.6 python3.5.2安装python依赖django-pure-pagination时出错

Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "", line 1, in
File "/tmp/pip-build-ktf3be8v/django-pure-pagination/setup.py", line 5, in
README = readme.read()
File "/usr/local/lib/python3.5/encodings/ascii.py", line 26, in decode
return codecs.ascii_decode(input, self.errors)[0]
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 672: ordinal not in range(128)

----------------------------------------

Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-ktf3be8v/django-pure-pagination/

mooder/context.py一个问题

现在resolve是不是要从django.urls导入(python3.6+Django 2.0)
from django.core.urlresolvers import resolve from django.urls import resolve

邀请码无法生成

邀请码点击生成无反应,vps是俄罗斯的

日志当中是

web_1  | [Sun Jul 22 23:54:56.599759 2018] [wsgi:error] [pid 37:tid 139800328333056] [remote 172.19.0.1:53832] /usr/local/python/lib/python3.5/site-packages/django/db/models/fields/__init__.py:1451: RuntimeWarning: DateTimeField Post.created_time received a naive datetime (2018-07-15 23:54:56.597391) while time zone support is active.
web_1  | [Sun Jul 22 23:54:56.600134 2018] [wsgi:error] [pid 37:tid 139800328333056] [remote 172.19.0.1:53832]   RuntimeWarning)
web_1  | [Sun Jul 22 23:55:06.171090 2018] [wsgi:error] [pid 37:tid 139800328333056] [remote 172.19.0.1:53862] /usr/local/python/lib/python3.5/site-packages/django/db/models/fields/__init__.py:1451: RuntimeWarning: DateTimeField Post.created_time received a naive datetime (2018-07-15 23:55:06.170316) while time zone support is active.
web_1  | [Sun Jul 22 23:55:06.171470 2018] [wsgi:error] [pid 37:tid 139800328333056] [remote 172.19.0.1:53862]   RuntimeWarning)

Django配置需要修改

Docker一键安装后出现这个问题:RuntimeError: Model class django.contrib.sites.models.Site doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS.

使用docker logs查看日志得到:

[Fri Apr 07 18:01:40.845060 2017] [wsgi:error] [pid 32:tid 139716320339712] mod_wsgi (pid=32): Target WSGI script '/tmp/mod_wsgi-localhost:80:0/handler.wsgi' cannot be loaded as Python module.
[Fri Apr 07 18:01:40.845189 2017] [wsgi:error] [pid 32:tid 139716320339712] mod_wsgi (pid=32): Exception occurred processing WSGI script '/tmp/mod_wsgi-localhost:80:0/handler.wsgi'.
[Fri Apr 07 18:01:40.848998 2017] [wsgi:error] [pid 32:tid 139716320339712] Traceback (most recent call last):
[Fri Apr 07 18:01:40.849090 2017] [wsgi:error] [pid 32:tid 139716320339712]   File "/tmp/mod_wsgi-localhost:80:0/handler.wsgi", line 94, in <module>
[Fri Apr 07 18:01:40.849104 2017] [wsgi:error] [pid 32:tid 139716320339712]     recorder_directory=recorder_directory)
[Fri Apr 07 18:01:40.849115 2017] [wsgi:error] [pid 32:tid 139716320339712]   File "/usr/local/python/lib/python3.5/site-packages/mod_wsgi/server/__init__.py", line 1335, in __init__
[Fri Apr 07 18:01:40.849119 2017] [wsgi:error] [pid 32:tid 139716320339712]     __import__(entry_point)
[Fri Apr 07 18:01:40.849126 2017] [wsgi:error] [pid 32:tid 139716320339712]   File "/app/mooder/wsgi.py", line 16, in <module>
[Fri Apr 07 18:01:40.849133 2017] [wsgi:error] [pid 32:tid 139716320339712]     application = get_wsgi_application()
[Fri Apr 07 18:01:40.849141 2017] [wsgi:error] [pid 32:tid 139716320339712]   File "/usr/local/python/lib/python3.5/site-packages/django/core/wsgi.py", line 13, in get_wsgi_application
[Fri Apr 07 18:01:40.849146 2017] [wsgi:error] [pid 32:tid 139716320339712]     django.setup(set_prefix=False)
[Fri Apr 07 18:01:40.849154 2017] [wsgi:error] [pid 32:tid 139716320339712]   File "/usr/local/python/lib/python3.5/site-packages/django/__init__.py", line 27, in setup
[Fri Apr 07 18:01:40.849157 2017] [wsgi:error] [pid 32:tid 139716320339712]     apps.populate(settings.INSTALLED_APPS)
[Fri Apr 07 18:01:40.849164 2017] [wsgi:error] [pid 32:tid 139716320339712]   File "/usr/local/python/lib/python3.5/site-packages/django/apps/registry.py", line 108, in populate
[Fri Apr 07 18:01:40.849167 2017] [wsgi:error] [pid 32:tid 139716320339712]     app_config.import_models()
[Fri Apr 07 18:01:40.849174 2017] [wsgi:error] [pid 32:tid 139716320339712]   File "/usr/local/python/lib/python3.5/site-packages/django/apps/config.py", line 202, in import_models
[Fri Apr 07 18:01:40.849177 2017] [wsgi:error] [pid 32:tid 139716320339712]     self.models_module = import_module(models_module_name)
[Fri Apr 07 18:01:40.849184 2017] [wsgi:error] [pid 32:tid 139716320339712]   File "/usr/local/python/lib/python3.5/importlib/__init__.py", line 126, in import_module
[Fri Apr 07 18:01:40.849187 2017] [wsgi:error] [pid 32:tid 139716320339712]     return _bootstrap._gcd_import(name[level:], package, level)
[Fri Apr 07 18:01:40.849194 2017] [wsgi:error] [pid 32:tid 139716320339712]   File "/usr/local/python/lib/python3.5/site-packages/registration/models.py", line 9, in <module>
[Fri Apr 07 18:01:40.849197 2017] [wsgi:error] [pid 32:tid 139716320339712]     from django.contrib.sites.models import Site
[Fri Apr 07 18:01:40.849205 2017] [wsgi:error] [pid 32:tid 139716320339712]   File "/usr/local/python/lib/python3.5/site-packages/django/contrib/sites/models.py", line 84, in <module>
[Fri Apr 07 18:01:40.849210 2017] [wsgi:error] [pid 32:tid 139716320339712]     class Site(models.Model):
[Fri Apr 07 18:01:40.849218 2017] [wsgi:error] [pid 32:tid 139716320339712]   File "/usr/local/python/lib/python3.5/site-packages/django/db/models/base.py", line 118, in __new__
[Fri Apr 07 18:01:40.849221 2017] [wsgi:error] [pid 32:tid 139716320339712]     "INSTALLED_APPS." % (module, name)
[Fri Apr 07 18:01:40.849246 2017] [wsgi:error] [pid 32:tid 139716320339712] RuntimeError: Model class django.contrib.sites.models.Site doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS.

查到一个可行的解决方案:http://stackoverflow.com/questions/35388637/runtimeerror-model-class-django-contrib-sites-models-site-doesnt-declare-an-ex

mooder/settings.py中的 INSTALLED_APPS 中添加'django.contrib.sites';并额外加入一行SITE_ID = 1

邀请码错误

之前提供的邀请码,输入后都是邀请码错误

大佬 看来在centOS玩上面有点点不兼容还是咋地

Traceback (most recent call last):
File "./manage.py", line 22, in
execute_from_command_line(sys.argv)
File "/usr/local/lib/python3.5/site-packages/Django-1.10.3-py3.5.egg/django/core/management/init.py", line 367, in execute_from_command_line
utility.execute()
File "/usr/local/lib/python3.5/site-packages/Django-1.10.3-py3.5.egg/django/core/management/init.py", line 359, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/usr/local/lib/python3.5/site-packages/Django-1.10.3-py3.5.egg/django/core/management/base.py", line 294, in run_from_argv
self.execute(*args, **cmd_options)
File "/usr/local/lib/python3.5/site-packages/Django-1.10.3-py3.5.egg/django/core/management/base.py", line 345, in execute
output = self.handle(*args, **options)
File "/usr/local/lib/python3.5/site-packages/Django-1.10.3-py3.5.egg/django/core/management/commands/migrate.py", line 204, in handle
fake_initial=fake_initial,
File "/usr/local/lib/python3.5/site-packages/Django-1.10.3-py3.5.egg/django/db/migrations/executor.py", line 115, in migrate
state = self._migrate_all_forwards(state, plan, full_plan, fake=fake, fake_initial=fake_initial)
File "/usr/local/lib/python3.5/site-packages/Django-1.10.3-py3.5.egg/django/db/migrations/executor.py", line 145, in _migrate_all_forwards
state = self.apply_migration(state, migration, fake=fake, fake_initial=fake_initial)
File "/usr/local/lib/python3.5/site-packages/Django-1.10.3-py3.5.egg/django/db/migrations/executor.py", line 244, in apply_migration
state = migration.apply(state, schema_editor)
File "/usr/local/lib/python3.5/site-packages/Django-1.10.3-py3.5.egg/django/db/migrations/migration.py", line 129, in apply
operation.database_forwards(self.app_label, schema_editor, old_state, project_state)
File "/usr/local/lib/python3.5/site-packages/Django-1.10.3-py3.5.egg/django/db/migrations/operations/models.py", line 96, in database_forwards
schema_editor.create_model(model)
File "/usr/local/lib/python3.5/site-packages/Django-1.10.3-py3.5.egg/django/db/backends/base/schema.py", line 295, in create_model
self.execute(sql, params or None)
File "/usr/local/lib/python3.5/site-packages/Django-1.10.3-py3.5.egg/django/db/backends/base/schema.py", line 112, in execute
cursor.execute(sql, params)
File "/usr/local/lib/python3.5/site-packages/Django-1.10.3-py3.5.egg/django/db/backends/utils.py", line 79, in execute
return super(CursorDebugWrapper, self).execute(sql, params)
File "/usr/local/lib/python3.5/site-packages/Django-1.10.3-py3.5.egg/django/db/backends/utils.py", line 64, in execute
return self.cursor.execute(sql, params)
File "/usr/local/lib/python3.5/site-packages/Django-1.10.3-py3.5.egg/django/db/utils.py", line 94, in exit
six.reraise(dj_exc_type, dj_exc_value, traceback)
File "/usr/local/lib/python3.5/site-packages/Django-1.10.3-py3.5.egg/django/utils/six.py", line 685, in reraise
raise value.with_traceback(tb)
File "/usr/local/lib/python3.5/site-packages/Django-1.10.3-py3.5.egg/django/db/backends/utils.py", line 62, in execute
return self.cursor.execute(sql)
File "/usr/local/lib/python3.5/site-packages/Django-1.10.3-py3.5.egg/django/db/backends/mysql/base.py", line 110, in execute
return self.cursor.execute(query, args)
File "/usr/local/lib/python3.5/site-packages/MySQLdb/cursors.py", line 250, in execute
self.errorhandler(self, exc, value)
File "/usr/local/lib/python3.5/site-packages/MySQLdb/connections.py", line 42, in defaulterrorhandler
raise errorvalue
File "/usr/local/lib/python3.5/site-packages/MySQLdb/cursors.py", line 247, in execute
res = self._query(query)
File "/usr/local/lib/python3.5/site-packages/MySQLdb/cursors.py", line 411, in _query
rowcount = self._do_query(q)
File "/usr/local/lib/python3.5/site-packages/MySQLdb/cursors.py", line 374, in _do_query
db.query(q)
File "/usr/local/lib/python3.5/site-packages/MySQLdb/connections.py", line 270, in query
_mysql.connection.query(self, query)
django.db.utils.OperationalError: (1071, 'Specified key was too long; max key length is 767 bytes')

help

求一份开发文档啊。。

漏洞分类无法选择

docker-compose up -d
启动后,提交贡献页面的分类无法选择,没有其他选项。提交提示必须选择分类

后台管理->用户里列表里的 启用/禁用 功能在IE/Firefox下无效

在IE/Firefox下点击用户列表里某个用户后面的 启用/禁用 按钮,会询问是否执行该动作,弹出一个空白页,然后启用/禁用动作并没有执行,只有在chrome下这个按钮才有效

问题在于这个按钮上有个target="_blank"的attribute,火狐/IE的行为貌似都是新开一个空白窗口然后在尝试执行那个js(然后失败),火狐下删除这个attribute后正常

win7/IE11
Firefox 47

文档修改建议

初始化分类中的源码安装创建管理员账户说明能否移动到源码安装一节?
。。。谢谢。

Missing on_delete kwargs for ForeignKey property

archives/models.py: 127

parent = models.ForeignKey('self', verbose_name='父评论', blank=True, null=True)

It's worth noting that on_delete will be a required arg in Django 2.0 and omitting it causes warning for Django1.x.

ConnectionResetError at /register/

[Errno 104] Connection reset by peer
Request Method: POST
Request URL: http://1ocalhost:8000/register/
Django Version: 1.11.3
Exception Type: ConnectionResetError
Exception Value: [Errno 104] Connection reset by peer Exception Location: /usr/local/python/lib/python3.5/ssl.py in do_handshake, line 633 Python Executable: /usr/local/python/bin/python3 Python Version:3.5.2

按照文档上docker-compose up -d 运行,注册时就出现这个,是配置有问题还是?

样式全部失效

样式资源全部引用的线上的,
现在线上资源404,导致页面样式全部丢失。

docker-compose up -d出错解决方案

hook@ubuntu:~/mooder$ docker-compose up -d
ERROR: Couldn't connect to Docker daemon at http+docker://localunixsocket - is it running?

If it's at a non-standard location, specify the URL with the DOCKER_HOST environment variable.
hook@ubuntu:~/mooder$
出现以上错误的解决方案:使用sudo

注册后发送的验证链接无法验证

注册后验证的链接是example.com/activate/xxxxxx
不是我的服务器地址,无法验证,大神帮忙看下怎么调整才可以,我是linux源码安装,debug模式

static_cdn加载错误

应该是static_cdn对应路径有问题了,部署后在登录页面主要的sign.css, refresh.js, archive.css, code.css等均没有加载出来

normalize.min.css	200	stylesheet	:2333/post/1/:33	(from disk cache)	2 ms
amazeui.min.css	200	stylesheet	(index)	(from disk cache)	4 ms
archive.css	404	stylesheet	(index)	175 B	44 ms
code.css	404	stylesheet	(index)	175 B	45 ms
jquery.js	200	script	(index)	(from memory cache)	0 ms
amazeui.min.js	200	script	(index)	(from memory cache)	0 ms
js/	200	script	(index)	1019 B	43 ms
fontawesome-webfont.woff2?v=4.6.3	200	font	(index)	(from memory cache)	0 ms

已经按照文档说明进行collectstatic操作了,请问P牛这里应该怎么解决呢

提交贡献之后,后台报500错误

提交贡献(文章)之后,其他页面正常,后台报500错误,具体错误如下,请问是什么原因?
[19/Jan/2019 14:23:26] "GET /management/ HTTP/1.1" 500 27
Exception ignored in: <generator object cursor_iter at 0x00000000048A7ED0>
Traceback (most recent call last):
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\site-p
ackages\django\db\models\sql\compiler.py", line 1292, in cursor_iter
cursor.close()
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\site-p
ackages\MySQLdb\cursors.py", line 85, in close
while self.nextset():
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\site-p
ackages\MySQLdb\cursors.py", line 173, in nextset
nr = db.next_result()
_mysql_exceptions.OperationalError: (2006, '')

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.