swift 3.1 версия размещена @Kushal Ashok
class ReselectableSegmentedControl: UISegmentedControl {
@IBInspectable var allowReselection: Bool = true
override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent?) {
let previousSelectedSegmentIndex = self.selectedSegmentIndex
super.touchesEnded(touches, with: event)
if allowReselection && previousSelectedSegmentIndex == self.selectedSegmentIndex {
if let touch = touches.first {
let touchLocation = touch.location(in: self)
if bounds.contains(touchLocation) {
self.sendActions(for: .valueChanged)
}
}
}
}
}
А, ладно, я понял это и опубликую решения для всех, кто попытается сделать то же самое.
Это решение предполагает, что вы хотите создать новые модели.
Сначала создайте новая папка для хранения ваших файлов. Мы назовем его «StandAlone». В «standAlone» создайте следующие файлы:
__init__.py
myScript.py
settings.py
Очевидно, «myScript.py» может иметь любое имя.
Затем создайте каталог для ваших моделей.
Мы назовем каталог нашей модели «myApp», но понимаем, что это обычное приложение Django в рамках проекта, поэтому назовите его в соответствии с коллекцией моделей вы пишете.
В этом каталоге создайте 2 файла:
__init__.py
models.py
Вам понадобится копия manage.py либо из существующего проекта Django, либо вы можете просто получить копию из пути установки Django:
django\conf\project_template\manage.py
Скопируйте manage.py в каталог / standAlone. Хорошо, теперь у вас должна быть следующая структура:
\standAlone
__init__.py
myScript.py
manage.py
settings.py
\myApp
__init__.py
models.py
Добавьте следующее в свой файл myScript.py:
# settings.py
from django.conf import settings
settings.configure(
DATABASE_ENGINE = "postgresql_psycopg2",
DATABASE_NAME = "myDatabase",
DATABASE_USER = "myUsername",
DATABASE_PASSWORD = "myPassword",
DATABASE_HOST = "localhost",
DATABASE_PORT = "5432",
INSTALLED_APPS = ("myApp")
)
from django.db import models
from myApp.models import *
и добавьте это в свой файл settings.py:
DATABASE_ENGINE = "postgresql_psycopg2"
DATABASE_NAME = "myDatabase"
DATABASE_USER = "myUsername"
DATABASE_PASSWORD = "myPassword"
DATABASE_HOST = "localhost"
DATABASE_PORT = "5432",
INSTALLED_APPS = ("myApp")
и, наконец, свой myApp / models.py:
# myApp/models.py
from django.db import models
class MyModel(models.Model):
field = models.CharField(max_length=255)
и это все. Теперь, чтобы Django управлял вашей базой данных, в командной строке перейдите в наш / standalone каталог и запустите:
manage.py sql MyApp