Создание беты кодировать для общественности django сайт

Вы сами подытожили фактический статус, а именно, что существует несогласованность.

В руководствах по представлению хранилища приложений Apple говорится:

Приложения, которые не очень полезны, уникальные, представляют собой просто веб-сайты, входящие в комплект как приложения, или не предоставляют каких-либо длительных развлекательных значений, могут быть отклонены

Таким образом, согласно самим Apple, приложения, которые являются только веб-сайтами, входящими в комплект приложений, могут быть отклонены, но, как вы сами обнаружили, на практике некоторые люди, очевидно, утверждают, что этот тип приложений одобрен, но, вероятно, разумно предположить, что он имеет высокую вероятность отклонения.

Таким образом, фактический статус заключается в том, что если у вас есть приложение, которое является не чем иным, как веб-сайтом, вы просто не знаете, примет или не примет его.

Я знаю, что это не тот ответ, на который вы надеялись, но в ситуации нет точных черно-белых жестких правил, которые можно утверждать как факты, и никто не может точно сказать, будет ли приложение принято или не будет принято o r отклонено.

Если вы планируете превращать веб-сайт в приложение, вы не будете знать, будет ли оно принято или нет, поэтому вы должны планировать соответственно, то есть попытаться придумать некоторые дополнительные уникальные функции, если это возможно, могут быть добавлены для дифференциации и расширения его по чистой веб-версии, так что, если он будет отклонен, вы можете внести некоторые изменения и повторно отправить.

11
задан tshepang 28 May 2014 в 04:32
поделиться

6 ответов

Запустите с этого отрывка Django, но измените его для проверки request.session['has_beta_access']. Если они не имеют его, то имеют его, возвращаются, перенаправление к "вводят бета страницу" кода, которая при регистрации на с правильным кодом устанавливает ту переменную сеанса на True.

При создании этого общедоступная бета затем просто заключается в удалении того промежуточного программного обеспечения от Вашего MIDDLEWARE_CLASSES установка.

19
ответ дан 3 December 2019 в 04:15
поделиться

Можно, вероятно, ограничить доступ ко всему сайту через апача с htaccess, вынув проблему из пространства django проекта полностью.

4
ответ дан 3 December 2019 в 04:15
поделиться

Сделайте то, что сделал StackOverflow.

У них была простая форма электронной почты/пароля. Это имело единственный трудно кодированный пароль (falkensmaze). Когда пользователь добирается, право пароля установило cookie. например, auth=1

Не волнуйтесь об этом являющийся небезопасным. Кто уход, если кто-то взламывает бету?

Apache/htaccess является также хорошим и простым решением.

2
ответ дан 3 December 2019 в 04:15
поделиться

Необходимо смочь добавить @login_required декораторы через плату и быть сделанным с ним. Если у Вас нет полной лодки функций представления, это не должно быть слишком ужасно.

0
ответ дан 3 December 2019 в 04:15
поделиться

Я не уверен, какую версию кода Pinax вы используете, но они встроили возможность закрыть сайт для закрытого бета-тестирования, поэтому вам не нужно много работайте сами.

Ссылка на конкретный шаблон проекта для частного бета-сайта находится здесь: http://github.com/pinax/pinax/tree/3ad73d1ba44f37365333bae17b507668b0eb7e16/pinax/projects/private_beta_project хотя я думаю, что с тех пор они могли добавить эту функциональность во все шаблоны проектов.

0
ответ дан 3 December 2019 в 04:15
поделиться

Отличный фрагмент, но он вызвал у меня множество проблем, связанных с сессиями OpenId. Так что я в конечном итоге полагаюсь на файлы cookie вместо сеанса:

class BetaMiddleware(object):
    """
    Require beta code cookie key in order to view any page.
    """
    set_beta = False
    def process_request(self, request):
        referer = request.META.get('HTTP_REFERER', '')

        if request.method == 'GET' and not 'is_in_beta' in request.COOKIES:
            return HttpResponseRedirect('%s?next=%s' % ('/beta/', request.path))

        if request.method == 'POST' and 'pass' in request.POST:
            code = request.POST['pass']

            if code=='beta':
                self.set_beta = True
                return HttpResponseRedirect('%s' % '/')

    def process_response(self, request, response):        

        if self.set_beta is True:
            response.set_cookie('is_in_beta', '1')
        return response

Это небезопасно, но для меня этого достаточно. Это также работает только с бета-страницей html.

0
ответ дан 3 December 2019 в 04:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: