Как выразить рабочие процессы и структуры данных торгового сайта в схеме базы данных и операций с ней?

Я работаю над очень амбициозным проектом электронной коммерции. Пока что все мои html-шаблоны созданы с помощью Notepad++. Мне нравится работать в NetBeans, используя концепцию MVC Cake Framework, которую, на мой взгляд, очень легко понять.

Я знаю, как создать простую корзину с базовыми командами, такими как добавить и удалить. Я также знаю, как работать с базами данных MySQL (думаю, этого достаточно). Я хотел бы продвинуть игру дальше, разработав полноценное сложное приложение, такое как Walmart или Amazon, где клиент может:

  • Авторизоваться
  • Управлять их учетной записью
  • Управление списком пожеланий
  • Посмотреть историю заказов
  • Управление подарочными картами и ваучерами
  • Просмотр, печать счетов
  • Зарабатывайте баллы в системе поощрения клиентов, просматривая продукты, делясь ими в социальных сетях, передавая заказы... и так далее.

1- Кто-нибудь из вас сделал это? Возможно ли использовать MVC Cake Framework?

2- Что касается процесса регистрации и всего остального, я знаю, что это в основном просто база данных, но как мне разработать список пожеланий... Вид списка пожеланий, который может быть создан посетителями без необходимости регистрироваться для добавления в него элементов, НО если они хотят управлять и сохранять его, им нужно создать учетную запись...

3- А как насчет системы вознаграждения своего рода «воздушными милями», которая связана с учетной записью и действиями (публикация в социальных сетях, покупка на сайте, просмотр продуктов и т. д.)? Это просто база данных? вещи также?Выполнимо с MySQL и MVC?

Я надеюсь, что я достаточно ясно, чтобы понять! Будем рады любой форме помощи, обратной связи или вклада! Я хотел бы услышать о ваших впечатлениях!


person user23524697    schedule 15.01.2015    source источник
comment
1. Да. Такие проекты достаточно амбициозны сами по себе. Лично я никогда не использовал MVC Cake Framework, но не вижу проблем с его использованием. 2. Пробовали ли вы что-нибудь до сих пор? Я думаю, у вас уже есть концепция реализации вашего списка пожеланий.   -  person Pepijn van Leeuwen    schedule 15.01.2015
comment
1a) да 1b) да 2) использовать файлы cookie для хранения не вошедших в систему после регистрации / входа в систему, а затем сохранить данные файлов cookie в БД и т. д.   -  person Dave    schedule 15.01.2015
comment
@Артурил. Я знаю, это очень амбициозно! Но в эти дни у меня много свободного времени, и я подумал о том, чтобы повеселиться с кодами, которые вы знаете! До сих пор я создал блоги и простые тележки для покупок. Обычные вещи. А вы? Какие фреймворки вы используете?   -  person user23524697    schedule 15.01.2015
comment
@ Дэйв. У вас есть сайт, который я могу проверить в образовательных целях? Какой фреймворк вы использовали, если использовали? Вы вообще работали с PHP? Как вы относились к списку желаний? Сколько дней/недель или месяцев у вас ушло на это? Если, конечно, вы не против поделиться своими знаниями! ^^   -  person user23524697    schedule 15.01.2015
comment
Да, каждый пункт этого может быть легко выполнен. В целом это действительно будет еще весьма двусмысленно. Я рекомендую использовать CakePHP3.0 (все еще RC, но скоро станет стабильным), если вы выбрали Cake.   -  person mark    schedule 15.01.2015
comment
Это было сделано на выходных около 7 лет назад. На самом деле это была переписка очень неудачной попытки создания сайта электронной коммерции индийским магазином кодов. Однако в нем есть все функции, которые вы перечислили, он не использует фреймворк, а код php очень и очень плохой, но вы, возможно, могли бы использовать его в качестве основы sourceforge.net/projects/ez-shop общее время написания этого составило около 40 часов, но разница заключалась в том, что я уже был опытным разработчиком + мне потребовалось много плохая практика коротких путей, чтобы сделать это так быстро.   -  person Dave    schedule 15.01.2015
comment
@отметка. На мой взгляд, установить Cake проще всего... Zend - настоящий монстр, от которого у меня разболелась голова... Когда вы говорите, что это легко сделать, вы имеете в виду дни, недели или месяцы? Вы сделали это сами? ^^   -  person user23524697    schedule 15.01.2015
comment
@ Дэйв. Спасибо за вклад, приятель! Проверяю все вживую! Я вернусь к тебе! Ваше здоровье!   -  person user23524697    schedule 15.01.2015
comment
@user23524697 user23524697 В настоящее время я использую Laravel в качестве фреймворка. Недавно я запрограммировал несколько приложений, в основном систему PoS и интеграцию между этой системой и существующим интернет-магазином. К сожалению, этот код закрыт: S.   -  person Pepijn van Leeuwen    schedule 15.01.2015
comment
@ Дэйв, я бы никогда никому не порекомендовал взглянуть на ужасный код, сделанный в Индии. За исключением того, что вы хотите показать кому-то, как не что-то делать. Тем более, что вы уже говорите, что это очень-очень плохо, почему вы вообще советуете его посмотреть?   -  person floriank    schedule 15.01.2015
comment
@burzum, чтобы он мог получить представление о рабочих процессах и о том, как реализовать функции. Я переписал около 90% кода, но он по-прежнему плохой, встроенный html, весь процедурный и т. д., это тоже очень-очень старый код, но идея не столько в том, чтобы скопировать код, сколько в том, чтобы посмотреть, как он работает, чтобы он мог понять, как он нужно реализовать вещи.   -  person Dave    schedule 15.01.2015


Ответы (1)


1- Кто-нибудь из вас сделал это? Возможно ли использовать MVC Cake Framework?

Да https://github.com/burzum/cakephp-cart-plugin

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

2- Что касается процесса регистрации и всего остального, я знаю, что это в основном просто база данных, но как мне разработать список пожеланий... Вид списка пожеланий, который может быть создан посетителями без необходимости регистрироваться для добавления в него элементов, НО если они хотят управлять и сохранять его, им нужно создать учетную запись...

Честно говоря, если вы не знаете, как составить тривиальный список пожеланий, у меня есть серьезные сомнения, что вы сможете должным образом разработать полноценное решение для электронной коммерции. Список пожеланий — это, по сути, просто совместная работа между продуктами и пользователями:

| id | user_id | product_id |

В CakePHP 2.x это выражается как ассоциация hasAndBelongsToMany, а в Cake3 она называется ownToMany, она была просто сокращена.

3- А как насчет «системы вознаграждения за воздушные мили, которая связана с учетной записью и действиями (расшаривание в социальных сетях, покупка на сайте, обзор продуктов ... и т. д.)? Это также просто база данных? Выполнимо с MySQL и МВК?

Опять же, то, что вы спрашиваете, заставляет меня думать, что вам не хватает необходимого опыта. Конечно, это теоретически выполнимо с любым языком и любой системой баз данных, это даже не обязательно должен быть MVC, есть несколько путей в Рим.

Тем не менее, CakePHP + Mysql — хороший выбор. В эти дни я бы выбрал Cake 3.0. Я не знаю, какого ответа вы ожидаете на этот очень широкий вопрос. Система вознаграждений и социальный обмен — это две разные подсистемы, которые могут работать вместе. Если вы ожидаете получить полную схему БД и предложения по архитектуре, извините, она слишком широка, чтобы на нее можно было быстро ответить.

person floriank    schedule 15.01.2015
comment
Спасибо за ответ бурзум. Я ценю это. Да, я новичок, и я не врал об этом! Но я очень быстро учусь (я научился пользоваться Cake за несколько часов или около того). Я не ожидаю полной схемы БД, поскольку, как вы упомянули, мой вопрос очень широк. Я просто хочу узнать об опыте других и о том, как они выполнят такой амбициозный проект. Пока я наслаждаюсь каждым входом! Это уже помогает мне сориентироваться! В большинстве случаев я слишком много думаю, и вот как все усложняется! Я думал, что списки желаний были более сложными, чем то, что вы сказали! Большое спасибо! - person user23524697; 16.01.2015