Эта страница на официальном сайте mongodb адресует точно этот вопрос:
http://docs.mongodb.org/ecosystem/tutorial/model-data- for-ruby-on-rails /
Когда мы показываем наш список историй, нам нужно будет показать имя пользователя, разместившего историю. Если бы мы использовали реляционную базу данных, мы могли бы выполнить соединение с пользователями и магазинами и получить все наши объекты в одном запросе. Но MongoDB не поддерживает объединения, и поэтому время от времени требуется бит денормализации. Здесь это означает кеширование атрибута «имя пользователя».
Реляционные пуристы уже чувствуют себя неловко, как будто мы нарушаем какой-то универсальный закон. Но давайте иметь в виду, что коллекции MongoDB не эквивалентны реляционным таблицам; каждая из которых служит уникальной проектной цели. Нормализованная таблица обеспечивает атомный изолированный кусок данных. Однако документ более тесно представляет собой объект в целом. В случае сайта социальных новостей можно утверждать, что имя пользователя является неотъемлемой частью истории, опубликованной.
blockquote>
Ваша первая строка начинается с (0,0)
и достигает (50, -50)
, таким образом, идет 50 единиц в направлениях X и Y . Но, во-вторых, вы идете от (0,-50)
к (50,50)
, таким образом, вы получаете 50 единиц в направлении X и 100 единиц в направлении Y . Кроме того, ваши правая и левая стороны не имеют никакого эффекта.
Одним из возможных решений будет:
t.setposition(-50,50)
t.pendown()
t.setposition(50,-50)
t.penup()
t.setposition(-50,-50)
t.pendown()
t.setposition(50,50)
Другой подход, который вы можете предпринять, - это вообще избежать setposition()
и думать как черепаха. То есть ползти вперед, назад и поворачиваться, а не телепортироваться:
import turtle as t
t.right(45)
t.forward(70)
t.backward(140)
t.forward(70)
t.left(90)
t.forward(70)
t.backward(140)
t.hideturtle()
t.done()